3个表名
yy_admin_user 管理员表 id
yy_auth_group 权限组表 id
yy_auth_group_access 中间表 uid和group_id
class AdminUser extends Model
{
use SoftDelete;
protected $deleteTime = 'delete_time';
public function get_group()
{
return $this->belongsToMany('AuthGroup','auth_group_access','group_id','uid');
}class AuthGroup extends Model
{
use SoftDelete;
protected $deleteTime = 'delete_time';
public function adminUser()
{
return $this->belongsToMany('AdminUser','auth_group_access','uid','group_id');
}<?php
namespace app\admin\model;
use think\model\Pivot;
class AuthGroupAccess extends Pivot
{
}$userModel->startTrans();
$data['password'] = $this->hash_encrypt($data['password']);
$data['create_time']=time();
if($userModel->where('username',$data['username'])->count() == 0){
$result = $userModel->allowField(true)->save($data);
if($result){
$insert['uid']= $userModel->id;
$insert['group_id']=$data['group_id'];
$groupRes = $userModel->get_group()->attach($insert);
if($groupRes){
$userModel->commit();
$res['code'] = 200;
$res['msg'] = '新增成功';
}else{
$userModel->rollback();
$res['code'] = 202;
$res['msg'] = '新增失败';
}
}else{
$res['code'] = 201;
$res['msg'] = '新增失败';
}
}else{
$res['code']=203;
$res['msg']='账号重复';
} 最佳答案