假设我有以下关联模式:
Person => [
hasMany => [
Courses => [Person.id = Courses.person_id]
],
Courses => [
belongTo => [
Schools => [School.id = Courses.school_id]
]
当我通过mydomain/person/view/1
查看某人时,我需要有一张桌子来显示该人的课程。在此表中,每个课程都需要显示学校的名称。
所以我在我的控制器上尝试了以下内容:
public function view($id = null)
{
$person = $this->Persons->get($id, [
'contain' => [
'Courses.Schools',
]
]);
$this->set('persons', $test);
$this->set('_serialize', ['person']);
}
我得到的是:
Person => [
firstname => test,
lastname => test,
courses => [
0 => [
id => 1,
shool_id => 1,
person_id => 1,
]
]
]
尽管我在包含选项中使用了它,但阵列中没有学校。所以我无法显示学校的名称。我做错了吗?是否有任何指南如何在视图上显示这些字段。
答案 0 :(得分:0)
基本上我很抱歉。这是由debugKit
引起的。 debugkit
仅通过变量面板显示关联,直到我提到的级别,但我使用var_dump
并且看到关联和相关字段被正确获取/加载。我信任debugKit,我认为它们没有加载。