2010-02-06 87 views
0

請告訴我創作的關係就像蛋糕PHP中使用表關係

var $belongsTo = array(
     'UserType' => array(
      'className' => 'UserType', 
      'foreignKey' => 'user_type_id', 
      'conditions' => '', 
      'fields' => '', 
      'order' => '' 
     ) 
    ); 
    //The Associations below have been created with all possible keys, those that are not needed can be removed 
    var $hasMany = array(
     'UserOpenid' => array(
      'className' => 'UserOpenid', 
      'foreignKey' => 'user_id', 
      'dependent' => true) 
); 

如果我加入這「屬於關聯」的感覺產生,在「的hasMany」表中的使用情況如何? 發生任何錯誤。 蛋糕如何使用模型中指定的關係?

+0

你可以把你的代碼示例在代碼標籤中嗎?它會使閱讀更容易。 – 2010-02-06 14:59:24

+0

好的,如果我指定喜歡這篇文章hasMany用戶我無法獲取用戶名rite? – udhaya 2010-02-06 13:00:37

+0

我認爲你說的是​​用戶有很多帖子。那麼在這種情況下,當你選擇一個特定的用戶時,你也會得到他所有的評論。 閱讀有關模型協會的食譜http://book.cakephp.org/view/78/Associations-Linking-Models-Together – PawelMysior 2010-02-06 14:50:24

回答

1

通過將模型關聯在一起,您可以告訴CakePHP在使用find()函數時從數據庫中獲得什麼。例如:

posts BelongsTo users =當您檢索帖子時,您還將獲得有關此帖子所屬的用戶的數據(posts.user_id = users.id)。

0

除了帕維爾的回答是:

「屬於關聯」,「的hasMany」等只是術語選擇以反映數據庫是如何設計以及如何表相互關聯的,它決定了數據如何被檢索。

  • belongsTo表示一對多的關係,用「屬於」的模式是在「多」方
  • hasMany表示的一對多的關係的另一側
  • hasOne表示一對一的關係
  • hasAndBelongsToMany表示一個多到多的關係

的具體關係來確定哪個標籤le保存哪些外鍵以及如何自動檢索數據表。如果您沒有這方面的經驗,請調查Normalization