php - CGridview Conditional display related model data -
i trying filter product record in gridview category_id
i have 3 table
productmst(product_id,name)
categorymst(category_id,category_nme)
promoteduserproduct(category_id,product_id) ====> junction table
productmst model rules this
public function relations() { return array( 'categorymsts' => array(self::many_many, 'categorymst', 'promoted_user_product(user_product_id, category_id)'), ); }
controller code this
$criteria=new cdbcriteria(); $categorycondition=array(); if(isset($_get['category_id']) && $_get['category_id']!==""){ $categorycondition=array('select'=>false, 'condition'=>'categorymsts.category_id=1', 'jointype'=>'inner join '); } $criteria->with=array( 'categorymsts'=>$categorycondition); $dataprovider=new cactivedataprovider('userproductdtl',array( 'pagination'=>array( 'pagesize'=>$pagesize, ), 'criteria'=>$criteria, )); $this->render('index', array('dataprovider'=>$dataprovider));
i not able filter record, can me out?
change this
$categorycondition=array( 'select'=>false, 'condition'=>'category_id=:category_id', 'params'=>['category_id'=>$_get['category_id'], 'jointype'=>'inner join ' );
Comments
Post a Comment