我添加了这个' sla_status' gridview中的字段,并且每件事情都工作正常问题是我无法为此设置过滤器值。 ' sla_status'不在我的桌子里。
[
'label' => Yii::t('app','Sla Status'),
'format' => 'raw',
'filterType' => GridView::FILTER_SELECT2,
'filter' => $status,
'filterWidgetOptions' => [
'options' => [
'placeholder' => Yii::t('app','All...' )
],
'pluginOptions' => [
'allowClear' => true
]
],
'headerOptions' => ['style' => 'text-align:center;color:#337ab7'],
'value' => function ($model, $key, $index, $widget)
{ }
]
和$ status为$status = array('0'=>Yii::t('app', 'Inactive'),'1'=>Yii::t('app', 'Active'));
答案 0 :(得分:1)
在搜索模型的规则数组中添加一个公共变量$ sla_status并将sla_status添加为安全的
public $sla_status;
public function rules()
{
return [
[['sla_status'], 'safe'],
];
}
答案 1 :(得分:0)
在搜索模型中,您应该添加属性sla_status 并在search()中添加所需的位置。 例如:
class TaskSearch extends Task{
public $sla_status;
public function search($params){
$query = Task::find();
if($this->sla_status){ $query->andWhere(...); }
}}
答案 2 :(得分:0)
在模型或搜索模型的规则方法中将字段“sla_status”添加到“safe”,如
[['sla_status'], 'safe'],