前言:
TP6框架实现数据表多对多互相关联实例,如果对你有帮助就看看吧。
正文:
今天发布一篇关于TP6框架一个比较小众的知识点,那就是数据表的多对多,何为多对多?最常见的场景就是管理员权限关系。
例如一个用户在一个网站通常可以分为超级管理员,普通管理员,用户,广告投放员等等这些权限,然后不同的权限又可以干不同的事情,当然用户也不止一个,说简单点就是,N个用户对应于N种权限,N种权限对于各种不同的操作,那么这就是数据库的多对多关联查询。
今天给大家带来一个多对多的简单实例代码,有多对多的新增权限,和删除权限,修改权限都有,大家可自行研究一下代码:
//--多对多关联代码,一般用于权限管理. //---模型类代码: // public function roles(){ // return $this->belongsToMany(Role::class, Access::class, 'role_id' , 'user_id'); // } //---控制器类代码: //打印出id为19用户的所有权限 // $user = UserModel::find(19); // $roles = $user->roles->toArray(); // print_r($roles); // $user = UserModel::find(19); //给一个用户新增一个权限的两种方法 // $user->roles()->save(5); // $user->roles()->save(Role::find(4)); //给一个用户增加一个权限并且还可以给另一个列新增一个备注信息 // $user->roles()->attach(Role::find(5), ['details'=>'测试详情']);
资源均来自第三方,谨慎下载,前往第三方网站下载