Yii 三表关联 角色表、角色权限连接表、权限表
角色表
role
----------------
id 唯一序号
name 角色名称
----------------
角色权限连接表 lp
---------------
id 唯一序号
r_id 连接角色ID
p_id 连接权限ID
---------------
权限表 priv
---------------
id 唯一序号
name 权限名称
action 权限动作
在“角色表”(role)的 relations 方法中配置如下
public function relations() { return array( 'sql_lp'=>array(self::HAS_MANY,'lp','r_id','alias'=>'lps','select'=>'*'), 'sql_pr'=>array(self::HAS_MANY,'priv','','alias'=>'prs','on'=>'lps.p_id=prs.id', 'select'=>'name,action'), ); }
在控制中中使用
$model=role::model()->with("sql_lp","sql_pr")->findAll();
搞定