Yii2: GridView filterModel «должно быть целое число» ошибка - PullRequest
0 голосов
/ 15 мая 2018

У меня есть модель с именем Праздники и модель с именем Персоны .

Праздники имеет поля: holiday_id и person_id .

Persons имеет поля: person_id и person_name .

ТогдаУ меня есть виджет GridView для отображения Праздники модель:

<?= GridView::widget([
    'dataProvider' => $dataProvider,
    'filterModel' => $searchModel,
    'columns' => [
        [
            'attribute' => 'person_id',
            'label' => 'Person',
            'value' => function($model) {
                $persons = \app\models\Persons::findOne(['person_id' => $model->person_id]);
                return $persons->person_name;
            }
        ],
    ],
]) ?>

Но фильтр не работает, потому что он хочет искать по person_id. Мне нужно выполнить поиск по person_name. Показывает ошибку «Персоны должны быть целыми числами».

GridView Widget showing error:

1 Ответ

0 голосов
/ 15 мая 2018

ваша сетка пытается отфильтровать по person_id, вам нужно обновить модель поиска, чтобы отфильтровать по связанным данным. (поскольку person_name не является свойством модели праздника)

Следуйте этому руководству в официальных документах

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...