求高手告诉我如何用关联模型实现这个SQL!!!

浏览:626 发布日期:2014/06/10 分类:求助交流 关键字: 关联模型
我是官方最新的3.2.2版本.

SQL语句是:select * from fv_user as u,fv_role as r,fv_role_user as ru where u.id = ru.user_id and r.id=ru.role_id and u.id=6我目前的UserModel.class.php代码是这样的:namespace Home\Model;
use Think\Model\RelationModel;

/**
 * 用户与角色关联模型
 */
class UserModel extends RelationModel{
    //定义主表名称
    //protected $tableName = "user";
    //定义关联关系
    protected $_link = array(
        'role'=>array(
            'mapping_type'=>self::MANY_TO_MANY,
            'class_name' =>"user",
            'mapping_name' =>"role",
            'foreign_key'=>'user_id',
            'relation_foreign_key'=>'role_id',
            'relation_table' => "fv_role_user",
        ),
    );
}
我在前台获取不到管理数据,最后一条SQL语句是这样的:SELECT b.* FROM fv_role_user AS a, fv_user AS b WHERE a.role_id = b.id AND a. parent_id='6'我的数据库表是这样的:

用户表:fv_user
角色表:fv_role
中间表:fv_role_user

前台执行的代码是这样的:$arr = D('User')->relation(true)->select();为什么SQL语句会出现这样的啊?

求高手告诉我如何用关联模型实现这个SQL!!!

万分感谢!!!
最佳答案
评论( 相关
后面还有条评论,点击查看>>