Yii2 фильтр связанных таблиц



  • Ты yii2 фильтр связанных таблиц спрашиваешь про сортировку, но тут же говоришь про фильтрацию. Неужели не понимаешь разницу?
    Фильтрацию по актерам сделать можно, статья на эту тему кажется называется "Сортировки и фильтрация по реляционным столбцам CGridView" но ссылки на неё у меня не сохранилось и найти не могу. Возможно потому что она на английском, а ищу на русском...
    Общий смысл в том, что вводимые тобою в строку фильтра данные передаются GET запросом в действие actionIndex:
    public function actionIndex(){ $model=new MyModel('search'); $model->unsetAttributes(); if(isset($_GET['MyModel'])) $model->attributes=$_GET['MyModel']; $this->render('index',array('model'=>$model)); }
    это я привел стандартный контроллер, его генерирует Gii. Эта модель создана для поиска, а не для записи чего-то в базу, поэтому у неё заполнена только часть полей.
    Следующий знаковый момент, это метод модели search() - он подготавливает DataProvider на основании которого отображаются данные в CGridView.
    $criteria->compare('name',$this->name); // если заполнено поле name по нему наложится условие фильтрации
    Из этого следует, что тебе нужно создать приватное поле в моделе: public $actorNames; и добавить его в правило как 'safe' - что бы в контроллере это поле назначалось в модель из $_GET.
    Потом особым образом в search() нужно составить условие на запрос к связанной таблице актеров и отборки только значений егде есть актеры с таким именем как $this->actorNames. Как ты это сделаешь, уже как получится. Можно сделать JOIN на три таблицы, можно сначала выбрать ID актеров в имени которых встречаются введенные буквы и основную таблицу объеденить с таблицей связи где actor_id IN (...)


    Источник: http://www.yiiframework.com/forum/index.php/topic/33573-как-связанные-данные-вывести-в-одной-таблице-в-п/



    Рекомендуем посмотреть ещё:


    Закрыть ... [X]

    Работа со связанными моделями в Yii2 на примере каталога - ElisDN - Как рассчитать вязание ушек

    Yii2 фильтр связанных таблиц Yii2 фильтр связанных таблиц Yii2 фильтр связанных таблиц Yii2 фильтр связанных таблиц Yii2 фильтр связанных таблиц Yii2 фильтр связанных таблиц Yii2 фильтр связанных таблиц