我的直截了当的问题:
如果我的数据库中存在多对多关系(如下表所示)
User Role UserRole
user_id role_id user_id
role_id
将此数据库连接到MVC框架时,UserRole是否有自己的模型?
在上下文中:
我正在用MVC框架重写我完全自编的Web服务,我决定使用Yii。我可以选择从我的数据库表中生成大量代码,但我对是否对多对多关系表进行建模感到困惑(如上面的UserRole)。
提前致谢!
答案 0 :(得分:2)
我主要使用代码优先方法,并且定义关系表对于多对多关系是可选的。从这里开始,我假设MVC框架通常认为这是可选的。所以,答案是:
UserRole必须拥有自己的模型吗?否。
UserRole可以拥有自己的模型吗?是。
UserRole应该拥有自己的模型吗?如果你的多对多只包含两个id,我就不会将它添加到模型中。
答案 1 :(得分:0)
对于多对多关系,您的关系定义如下:return array( 'roles'=>array(self::MANY_MANY, 'Role', 'user_role(user_id, role_id)'), );
,user_role
是连接表,user_id
和role_id
是外键。< / p>