簡體   English   中英

如何通過另一個模型加載一個模型的數據

[英]How to load data of one model through another

我在 CakePhp 中加載數據時遇到問題。 我有客戶、客戶類型和賬單模型。 Customertypes 與有HABTM 關系的Customers 相關,但與Bills 模型無關。 所以我接下來的問題是:我如何只加載屬於客戶的賬單,這些賬單屬於特定的客戶類型,這意味着我需要從特定的客戶類型加載客戶的賬單。 我如何使用查詢加載它? 我需要“加入”嗎?

您不需要在模型或數據庫級別使用顯式連接。 我假設您的“客戶”模型“hasMany”“Bills”,“Bills”模型“belongsTo”“Customer”? 如果是這樣,那么您應該能夠在 Bills 控制器中設置一個 $conditions 數組(隨后將其傳遞給 paginate() 函數),其中包含如下所示的散列/值:

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

顯然,如果 $someCustomerTypeId 需要是一個動態值,那么您還有更多工作要做——您可能需要創建一個“搜索”表單,該表單返回包含搜索條件的 $this->request->data,然后您可以使用它來調用“索引”功能。

抱歉,這有點含糊。 如果您像您所說的那樣,在客戶和客戶類型之間存在 HABTM 關系,而不是一對多關系,則情況可能會更加復雜。 但希望這可能會有所幫助。 祝你好運!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM