【发布时间】:2012-02-16 14:43:37
【问题描述】:
在我的数据库中,我有 5 个表:
- 游戏(game_id,name,...)
- 标签 (tag_id,name,...)
- 集合 (coll_id,name,...)
- collections_tags (id,coll_id,tag_id)
- game_tag (id,game_id,tag_id)
每个游戏都有很多标签,收藏有很多标签。如果我拿了一个收藏,我可以使用收藏的标签找到它的游戏。
我正在尝试使用 yii 关系执行此任务:
//in Collection's relations:
'tags'=>array(self::MANY_MANY, 'Tag', 'collections_tags(coll_id,tag_id)'),
'games'=>array(self::HAS_MANY, 'Game','tag_id', 'through'=>'tags')
然后我得到一个 $collection 并试试这个:
echo "collection ".$collection->name.": (id=".$collection->coll_id.") has ".count($collection->tags)."tags\n";
echo count($coll->games);//error here
并得到一个错误
关系有什么问题?
【问题讨论】: