如何使用find方法限制关联模型的字段

时间:2011-08-19 13:03:19

标签: php cakephp cakephp-1.3 cakephp-appmodel

我有用户模型和文章模型。用户有很多文章。因此,当我查询用户时,将检索文章表的所有字段。我想限制它只是文章的标题。

$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 个答案:

答案 0 :(得分:5)

你最好使用Containable,这也很简单:

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