如何通过另一个模型加载一个模型的数据

问题描述:

我在CakePhp中加载数据时遇到了麻烦。我有客户,客户类型和账单模型。客户类型与具有HABTM关系的客户相关,但与Bills模型不相关。所以我的问题是:我怎样才能加载只属于客户,属于特定Cutomertype,这意味着我需要加载来自特定Customertype的客户账单的账单。我怎样才能加载这个,使用查询?我需要'连接'吗?如何通过另一个模型加载一个模型的数据

+1

所以,所有的人都给我大拇指朝下,但没有人给出任何论证 – Vladislav

您不需要在模型或数据库级别使用显式连接。我假设你的“客户”模型“有许多”“票据”,“票据”模型“belongsTo”“客户”?如果是这样,那么你应该能够在Bills控制器中设置一个$ conditions数组(你随后传递给paginate()函数),其中包括一个哈希值/值如下:

$ conditions [“Customer .customer_type_id“] = $ someCustomerTypeId;

很明显,如果$ someCustomerTypeId需要是一个动态值,那么你有更多的工作要做 - 你可能需要创建一个“搜索”表单,它返回$ this-> request->包含搜索标准的数据,你然后用来调用“索引”功能。

对不起,这有点含糊。如您所说,如果客户与客户类型之间存在HABTM关系,而不是一对多关系,则可能会更加复杂。但希望可能会有所帮助。祝你好运!