【发布时间】:2012-08-03 14:47:39
【问题描述】:
我是 CakePHP 新手,在获取关联模型的显示字段时遇到了麻烦。
我的模型是这样的: - 有很多注释的问题。 - 笔记属于问题和用户。 - 用户有很多笔记。
当我查看注释时,用户有一个名为 name 的字段用作 displayField。但在问题的查看方法上,我只得到 user_id。有没有办法获取与某个问题的注释相关联的用户名?
提前谢谢你!!!
【问题讨论】:
标签: cakephp cakephp-2.1
我是 CakePHP 新手,在获取关联模型的显示字段时遇到了麻烦。
我的模型是这样的: - 有很多注释的问题。 - 笔记属于问题和用户。 - 用户有很多笔记。
当我查看注释时,用户有一个名为 name 的字段用作 displayField。但在问题的查看方法上,我只得到 user_id。有没有办法获取与某个问题的注释相关联的用户名?
提前谢谢你!!!
【问题讨论】:
标签: cakephp cakephp-2.1
您可以使用递归参数:cakephp docs
$this->Question->recursive=1;
$questions=$this->Question->find('all');
$this->set(compact('questions'));
那么在你看来:
foreach($question['Note'] as $note)
{
foreach($note['User'] as $user){
echo $user[name];
}
}
代码已编辑。
【讨论】:
Questions that hasMany Notes,因此 recursive=1 应该足够了。不建议使用recursive=2,尤其是对于大型数据集,因为要获取大量记录,所以速度很慢。