Scope с одинаковыми полями

Общие вопросы по использованию фреймворка. Если не знаете как что-то сделать и это про Yii, вам сюда.
Ответить
Zvook
Сообщения: 21
Зарегистрирован: 2013.03.06, 13:06

Scope с одинаковыми полями

Сообщение Zvook »

Всем привет!

Такая ситуация. Есть 2 таблицы связанные внешним ключем. В обеих таблицах есть поле is_active. В обеих таблицах есть скоп:

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

        public function scopes(){
            return array(
                'active' => array('condition' => 'is_active = 1')
            );
        }
При вот таком запросе:

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

$x = Table1::model()->active()->with('table2s:active')->findAll() 
естественно все падает, потому что запрос не понимает где чей is_active вызывается.
Если прямо в скопе поставить t.is_active, тогда скоп получится "односторонний", потому что 't' всегда разная ...
Собственно, проблема не критичная, заменил пока на обычный кондишен, но вообще хотелось бы понять как такую ситуацию решить :?

Аватара пользователя
anton44eg
Сообщения: 2716
Зарегистрирован: 2012.01.25, 13:37
Откуда: Киев

Re: Scope с одинаковыми полями

Сообщение anton44eg »

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

'active' => array(
                'condition' => $this->getTableAlias() . '.status = ' . User::STATUS_ENABLED
            ), 

Ответить