2014-04-01 106 views
0

我有2個表,類別(ID,姓名)和產品(ID,的categoryId,標題,內容)和我的模型看起來像這樣警予活動記錄關係

class Category extends CActiveRecord { 
    public $id; 
    public $name; 
    public function tableName() { return 'categories'; } 
    public function relations() { 
     return array('products' => array(self::HAS_MANY, 'Product', 'categoryId')); 
    } 
} 
class Product extends CActiveRecord { 
    public $id; 
    public $title; 
    public $content; 
    public function tableName() { return 'products'; } 
} 

問題是,當我嘗試訪問產品像活動記錄類「分類」這個

Category::model()->with('products')->findAll() 

的關係,「產品」與一個無效的外鍵「的categoryId」規定。表格「類別」中沒有這樣的列。

我看着與用戶/郵政例如文檔和不明白爲什麼我的例子不工作。有人可以清理一下嗎?謝謝。

回答

0

確保產品表有爲了節省category表的主鍵

+0

我的產品表有一個categoryId列。 – CipQuestion

+0

@CipQuestion:那爲什麼它不在'Products'模型中? – Nauphal

+0

我試着將它添加到模型中,但仍然沒有,同樣的錯誤。 – CipQuestion

0

嘗試specifing的categoryid代替categoryId場稱爲categoryId。原因可以在lower_case_table_names mysql指令中。