2010-05-23 73 views
0

我只是在CakePHP中進行開發,所以請原諒我,如果這看起來很明顯;它對我有用,當我第一次閱讀has,belongsTo,hasMany等CakePHP:對單個模型使用兩張表

問題是我想關聯兩個表與單個模型,並想知道是否有一種方法來配置此,以便當CakePHP做了它的查詢,它自動在兩個表上執行連接。

我不想爲第二個表創建單獨的模型,因爲它僅僅是一個元信息表 - 主表將包含所需的主要信息,元表將填充不需要的輔助信息因此可以或不可以爲主表的每一行設置。

回答

4

如果您將始終通過第一個表訪問第二個表,您不需要明確創建表的模型。如果內存服務,Cake將隱式創建模型並在第一個參考時使用標準 Cake方法返回其數據。如果您需要自定義方法,則需要對模型進行編碼。

例如,我經常有一個Company模型和一個Address模型。我爲前者創建了一個模型,但不是後者。調用Company::find()返回地址信息,只要Company hasOne Address(或hasMany)和recursive選項設置爲1或更高。

+0

我大概應該在發佈之前嘗試這個;該文檔使得聽起來就像您定義了一個必須明確定義模型*的關係或所有關係。謝謝! – mwaterous 2010-05-25 17:06:19

+0

被忽視的內置功能 - >你給了我一個想法來清理/收緊我的應用程序。優秀的解決方給予好評。 :) – OpenSorceress 2011-06-27 23:50:58