Не удается сослаться на связанную таблицу в ActiveRecord Yii - PullRequest
1 голос
/ 09 февраля 2012

Я пытаюсь получить связанную таблицу в Yii, и она продолжает выдавать ошибку, пытаясь сослаться на поле event.text.

return new CActiveDataProvider( 'InvitationCode', array(
    'criteria'=>array(
    'select' => array( 't.id', 'code', 'Event.text' ),
    'condition'=>'t.id >= :min_code_id AND t.id <= :max_code_id',
    'order'=>'t.id Asc',
    'with' => array( 'Event' ),
    'params' => array(
          ':min_code_id' => $min_code_id, 
          ':max_code_id' => $max_code_id,
        ),                  
    ),      
));  

Событие таблицы, которое связано с InvitationCode через отношениеУ 'Event' есть текстовое поле, но я не могу получить к нему доступ ни с помощью 'event.text', ни 'Event.text'
Если я опускаю часть 'select', она только выводит поля InvitationCodeни одно из полей из связанной таблицы Event, несмотря на то, что оно находится в части 'with'.

Как я могу ссылаться на связанную таблицу Event?

1 Ответ

0 голосов
/ 09 февраля 2012

Что такое точное сообщение об ошибке?Можете ли вы опубликовать код, определяющий отношения () в классе модели InvitationCode?Вы включили ведение журнала запросов, чтобы увидеть точный сгенерированный запрос?

Как отмечено в комментарии, вам, вероятно, придется явно установить вместе => true для быстрой загрузки.

От: http://www.yiiframework.com/doc/guide/1.1/en/database.arr

вместе : следует ли принудительно объединять таблицу, связанную с этим отношением, с основной таблицей и другими таблицами.Этот параметр имеет смысл только для отношений HAS_MANY и MANY_MANY.Если для этого параметра задано значение false, таблица, связанная с отношением HAS_MANY или MANY_MANY, будет объединена с основной таблицей в отдельном запросе SQL, что может повысить общую производительность запроса, поскольку возвращается меньше дублированных данных.Если для этого параметра установлено значение true, связанная таблица всегда будет объединена с основной таблицей в одном запросе SQL, даже если основная таблица разбита на страницы.Если этот параметр не задан, связанная таблица будет объединена с основной таблицей в одном запросе SQL, только если основная таблица не разбита на страницы.Подробнее см. В разделе «Производительность реляционных запросов».

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