侠客的博客

略懂Html,Css,JavaScript,JQuery,Linux,PHP,Java,Vue,Python

thinkphp5 模型二次关联

常见的是一次关联,二次关联,大家可能没有用过

实际应用场景是:

部门表:department

create table department(
    id int unsigned auto_increment primary key,
    name varchar(24) not null
) comment = '部门表';


角色表:auth

create table auth(
    id int unsigned auto_increment primary key,
    name varchar(24) not null,
    department_id int not null
) comment = '角色表';

模型:

public function relationDepartment()
{
    return $this->hasOne('Department','id','department_id');
}


用户表:user

create table user(
    id int unsigned auto_increment primary key,
    name varchar(24) not null,
    auth_id int not null
) comment = '用户表';

模型:

public function relationAuth()
{
    return $this->hasOne('Auth','id','auth_id');
}


实现代码:

/**
* 查询用户表中ID等于1的用户的角色、部门信息
*/
$userInfo = (new User())->with('relationAuth.relationDepartment')->find(1);


完事,thinkphp5模型的二次关联是这样,需要注意的是,连接符是 . (小数点),切记,不是逗号

发表评论:

©Copyright 2019 52400073.com Author by xaake,基于 Zblog