Параметры поиска: поиск с фотографией

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
Ответить
codrilla
Сообщения: 173
Зарегистрирован: 2013.03.06, 12:24
Откуда: Молдова, Тирасполь

Параметры поиска: поиск с фотографией

Сообщение codrilla »

В модели поиска прописал

Код: Выделить всё

if (!empty($this->withPhoto)) {
            $query->innerJoinWith('photos', false);
        }
 
В самой модели есть связь

Код: Выделить всё

    public function getPhotos()
    {
        return $this->hasMany(Photo::className(), ['car_id' => 'id']);
    }
 
В контроллере пишу

Код: Выделить всё

$dataProvider = $searchModel->search(['withPhoto'=>1]);
 
Но условие не срабатывает, всё равно выводятся модели и без фото. Помогите разобраться, какая ошибка в этом коде. Спасибо заранее.
lynicidn
Сообщения: 2222
Зарегистрирован: 2014.05.24, 15:12

Re: Параметры поиска: поиск с фотографией

Сообщение lynicidn »

надо в констуктор передавать
new SearchModel(['withPhoto' => true])
lynicidn
Сообщения: 2222
Зарегистрирован: 2014.05.24, 15:12

Re: Параметры поиска: поиск с фотографией

Сообщение lynicidn »

и аттрибут разрешить
codrilla
Сообщения: 173
Зарегистрирован: 2013.03.06, 12:24
Откуда: Молдова, Тирасполь

Re: Параметры поиска: поиск с фотографией

Сообщение codrilla »

Было

Код: Выделить всё

['withPhoto', 'integer'],
 
Сделал

Код: Выделить всё

['withPhoto', 'boolean'],
 
и

Код: Выделить всё

$dataProvider = $searchModel->search(['withPhoto'=>true]);
 
Так не сработало. Попробовал new SearchModel(['withPhoto' => true]), тоже не помогло. И чем такая запись отличается от search, который я использовал?
codrilla
Сообщения: 173
Зарегистрирован: 2013.03.06, 12:24
Откуда: Молдова, Тирасполь

Re: Параметры поиска: поиск с фотографией

Сообщение codrilla »

Просто надо было сделать так:
$dataProvider = $searchModel->search(['CarSearch'=>['withPhoto'=>true]]);
Ответить