фильтр для пользовательского столбца в виде сетки, которого нет в таблице yii2

Я добавил это поле ‘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 = array('0'=>Yii::t('app', 'Inactive'),'1'=>Yii::t('app', 'Active'));

3

Решение

в поисковой модели вы должны добавить атрибут sla_status
и в search () добавить обязательно где.
например:

class TaskSearch extends Task{
public $sla_status;
public function search($params){
$query = Task::find();
if($this->sla_status){ $query->andWhere(...); }
}}
0

Другие решения

Добавьте ваше поле «sla_status» в «safe» в методе правил вашей модели или поисковой модели, например


[['sla_status'], 'safe'],

0

По вопросам рекламы [email protected]