CakePHP 3 в представлении показывает поле из модели принадлежности к ассоциации

Допустим, у меня есть следующая схема ассоциаций:

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,
]
]
]

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

2

Решение

В основном я прошу прощения за это. Это вызвано из-за debugKit, debugkit показывает через панель переменных ассоциации только до уровня, который я упомянул, но я использовал var_dump и увидел, что ассоциации и связанные поля выбраны / загружены правильно. Я доверял debugKit и думал, что они не загружены.

0

Другие решения

Других решений пока нет …