Как ограничить поля связанных моделей с помощью метода find - PullRequest
0 голосов
/ 19 августа 2011

У меня есть модель пользователя и статьи.Пользователь имеет много статей.Поэтому, когда я запрашиваю пользователя, все поля таблицы статей извлекаются.Я хочу ограничить это только названием статей.

$user = $this->User->find('all', array('conditions' => array('User.id' => $id), 'fields' => array('User.firstName', 'Article.title')));

Поля отлично работают для пользовательской модели.Но это не работает для связанных моделей.выдает ошибку

SQL Error: 1054: Unknown column 'Article.title' in 'field list' 

Я ценю любую помощь.

1 Ответ

5 голосов
/ 19 августа 2011

Вы лучше используете Контейнер , и это так же просто:

$this->User->Behaviors->attach('Containable');
$user = $this->User->find('all', array('conditions' => array('User.id' => $id), 'contain' => array('Article.title'), 'fields' => array('User.firstName')));
...