2013-05-01 84 views
2

我有一個產品表和一個products_relateds表。這個擁有2個引用產品(產品和related_id)與相同型號的蛋糕PHP HABTM關係

我想設立這個像這樣一個HABTM關係在我的產品型號

public $hasAndBelongsToMany = array(
     'Related' => array(
      'className' => 'Product', 
      'joinTable' => 'products_relateds', 
      'foreignKey' => 'product_id', 
      'associationForeignKey' => 'related_id', 
      'unique' => 'keepExisting', 
      'conditions' => '', 
      'fields' => '', 
      'order' => '', 
      'limit' => '', 
      'offset' => '', 
      'finderQuery' => '', 
      'deleteQuery' => '', 
      'insertQuery' => '' 
     ) 
    ); 

這是否正確?我是否需要創建相關模型? 我沒有得到任何錯誤,並且當這種關係存在時查看產品頁面不會加載

回答

0

該代碼很好,您的錯誤必須在別處。使用$this->Product->findBy(1)應該返回類似這樣的內容:

array(
    'Product' => array(
     'id' => '1', 
     'name' => 'Test 1' 
    ), 
    'Related' => array(
     0 => array(
      'id' => '2', 
      'name' => 'Test 2', 
      'ProductsRelated' => array(
       'id' => '3', 
       'product_id' => '1', 
       'related_id' => '2' 
      ) 
     ), 
     1 => array(
      'id' => '3', 
      'name' => 'Test 3', 
      'ProductsRelated' => array(
       'id' => '1', 
       'product_id' => '1', 
       'related_id' => '3' 
      ) 
     ) 
    ) 
)