【发布时间】:2016-02-24 21:02:29
【问题描述】:
我试图弄清楚如何在 CakePHP 3.x 中获取嵌套子对象的值
一个基本示例由三个实体组成:
服务器、机架、操作系统
表格:
机架 - id、名称
服务器 - id、主机名、rack_id、operating_system_id
Operating_systems - ID、名称
机架有许多服务器
服务器属于操作系统和属于机架
如何在我的机架视图中引用机架->服务器->操作系统->名称?
//View.ctp
<?php foreach ($rack->servers as $servers):
echo h($servers->hostname)
echo h($servers->operating_system->name) //Doesn't output OS Name
endforeach; ?>
//View Function in RacksController:
public function view($id = null)
{
$rack = $this->Racks->get($id, [
'contain' => ['Servers']
]);
$this->set('rack', $rack);
$this->set('_serialize', ['rack']);
}
不确定这是否最终成为控制器中的自定义查询,或者是否有内置的 Cake 语法来完成我需要的。感谢您的帮助。
【问题讨论】:
标签: php cakephp cakephp-3.0