我为这个令人困惑的标题道歉,我对如何表达我的问题感到有些困惑。
我是 CakePHP 的新手,但是我很好地遵循了食谱/教程,但是我遇到了一些我找不到答案的东西。
我的结构如下:
'Invoices' hasMany 'InvoiceHistory'
'InvoiceHistory' belongsTo 'InvoiceHistoryDeliveryStatus'
因此,一张发票可以有多个发票历史,每个历史都包含一个交货状态id,它链接到一个名称。
在发票视图 (index.ctp) 上,我正在显示所有发票的列表,但希望显示最近的交付状态名称(InvoiceHistory 包含一个日期字段,因此可以对其进行排序) - 从而显示“当前交付状态”。当我做:
$this->set('invoices', $this->Invoice->find('all'));
它返回的内容不够深入,无法为我提供交付状态名称,我也没有推断出一种仅在结果中返回最新发票历史记录的方法。我知道如何使用 MYSQL 查询手动执行此操作,但我认为这可能是完全错误的。
遵循 CakePHP 约定的正确方法是什么?