Activerecord 错误导致的Yii关系模糊不清

Activerecord 错误导致的Yii关系模糊不清,activerecord,yii,Activerecord,Yii,我在mysql中有一个结构: community: id | etc... category: id | community_id | etc topic: id | category_id | etc 所以,我在社区模型中编写关系 'categories' => [self::HAS_MANY, 'Category', 'community_id'], 'topics' => [self::HAS_MANY, 'Topic', 'id', 'through' => 'c

我在mysql中有一个结构:

community:
id | etc...

category:
id | community_id | etc

topic:
id | category_id | etc
所以,我在社区模型中编写关系

'categories' => [self::HAS_MANY, 'Category', 'community_id'],
'topics' => [self::HAS_MANY, 'Topic', 'id', 'through' => 'categories'],

但是,关系主题不起作用,错误:order子句中的“id”列不明确。

您的关系应如下所示:

'categories' => array(self::HAS_MANY, 'Category', 'community_id'),
'topics' => array(self::HAS_MANY, 'Topic', array('category_id','id'), 'through' => 'categories'),