MVC - 多对多关系 - 他们自己的模型?

时间:2013-07-25 08:53:53

标签: sql yii many-to-many yii-cmodel

我的直截了当的问题:

如果我的数据库中存在多对多关系(如下表所示)

User          Role          UserRole
  user_id       role_id       user_id
                              role_id

将此数据库连接到MVC框架时,UserRole是否有自己的模型?

在上下文中:

我正在用MVC框架重写我完全自编的Web服务,我决定使用Yii。我可以选择从我的数据库表中生成大量代码,但我对是否对多对多关系表进行建模感到困惑(如上面的UserRole)。

提前致谢!

2 个答案:

答案 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_idrole_id是外键。< / p>