0
我有兩個表用戶和位置CakePHP的模型關係
用戶ID(主)和位置字段/列
位置都有編號(主)和城市列現在
我希望通過user.location與location.city 將這兩個表聯繫起來。我該如何做呢?considring city不是主鍵,而是獨特的。 我正在使用cakephp 1.2。
而且在mysql中我可以關聯/加入無主鍵,但表的唯一密鑰
我有兩個表用戶和位置CakePHP的模型關係
用戶ID(主)和位置字段/列
位置都有編號(主)和城市列現在
我希望通過user.location與location.city 將這兩個表聯繫起來。我該如何做呢?considring city不是主鍵,而是獨特的。 我正在使用cakephp 1.2。
而且在mysql中我可以關聯/加入無主鍵,但表的唯一密鑰
無論是在飛行綁定,您可以創建模型或加入與非主鍵如下
public $hasOne = array(
'RelatedModel' => array(
'className' => 'RelatedModel',
'foreignKey' => false,
'conditions' => array(
'`MainModel`.`random_field` = `RelatedModel`.`some_field`'
)
)
}
訣竅是外鍵設置爲false,以便蛋糕不會嘗試任何事情,然後設置條件manualy,還要注意的是,字段excaped和一個字符串作爲像
'`MainModel`.`random_field`' => '`RelatedModel`.`some_field`'
將輸出
SELECT ..... FROM ... LEFT JOIN ... ON (`MainModel`.`random_field` = '`RelatedModel`.`some_field`')
這將嘗試加入一個=='RelatedModel
行。 some_field
'(實際的字符串)
會試試看,那麼我的問題的一部分mysql怎麼樣 – aWebDeveloper 2010-09-29 05:49:16
你試過嗎?你不認爲如果mysql不能這樣做,我會這樣說,而不是給你一大堆代碼。你可以加入任何你喜歡的東西 – dogmatic69 2010-09-29 13:45:33
感謝您的洞察力 – aWebDeveloper 2010-09-30 05:33:10