我是yii的新手,无法在zii.widgets.grid.CGridView中过滤数据,具体取决于我的数据库表的活动标志字段。 我想只显示活动标志为0的数据。
$this->widget('zii.widgets.grid.CGridView', array(
'id'=>'member-grid',
'dataProvider'=>$model->search(),
'filter'=>$model,
'columns'=>array(
'id',
'f_name',
'l_name',
'dob',
'gender',
'location',
'email',
'active',
array(
'class'=>'CButtonColumn',
),
),
));
答案 0 :(得分:3)
在模型的search()方法中,您需要自定义CDbCriteria。
您需要添加:
$criteria->compare('active', 1);
如果你想更高级,你可以创建一个Named Scope并在search()方法中定义ActiveDataProvider时使用它,如下所示:
new CActiveDataProvider(Member::model()->active(),.....);
范围是:
public function active()
{
return array(
'condition'=>$this->getTableAlias(false, false).'.active =1',
);
}