Expression - баг или фича

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
Ответить
Аватара пользователя
Insolita
Сообщения: 788
Зарегистрирован: 2011.06.06, 01:39
Контактная информация:

Expression - баг или фича

Сообщение Insolita »

Не знаю баг это или фича Expression, но

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

$query = News::find()
            ->where('{{%news}}.active=:a',[':a'=>1])
            ->andWhere('{{%news}}.publishto<=:b',[':b'=>new Expression('NOW()')])
            ->orderBy(['{{%news}}.publishto'=>SORT_DESC]);
не работает как надо, условие по дате не отрабатывает, а

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

 $query = News::find()
            ->where('{{%news}}.active=:a',[':a'=>1])
            ->andWhere(new Expression('{{%news}}.publishto<=NOW()'))  
            ->orderBy(['{{%news}}.publishto'=>SORT_DESC]);

Работает корректно, хотя в debug-toolbar сгенерированный SQL выдается одинаковый

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

SELECT * FROM `vg_news` WHERE (`vg_news`.active=1) AND (`vg_news`.publishto<=NOW()) ORDER BY `vg_news`.publishto DESC
Если это фича такая - то хоть задокументировать как-то...
Аватара пользователя
maleks
Сообщения: 1992
Зарегистрирован: 2012.12.26, 12:56

Re: Expression - баг или фича

Сообщение maleks »

Так вроде нигде и не написано что в параметры можно пихать Expression.
Ответить