我在laravel有一个项目, 它是一个在线图书馆,可以有三种类型的用户,superAdmin writersAdmin和writers,
我已经成功创建了角色和权限 但我希望在用户表中有上级和下属的关系
例如,writersAdmin可以有多个适合他的编写器,
是否可以仅在users表中执行此操作,或者是否必须创建其他表。
答案 0 :(得分:0)
只能在用户表中实现。
例如,添加superior_id列,并保存上级的ID。 并将以下代码添加到用户模型中。class User extends Eloquent {
protected $table = 'users';
public $timestamps = false;
public function parent()
{
return $this->belongsTo('User', 'superior_id');
}
public function children()
{
return $this->hasMany('User', 'superior_id');
}
}
如何使用
User::with('parent')->find(1);
User::with('children')->find(1);
但是,如果用户中有多个上级,则无法在此方法中实现。
在这种情况下,我建议你创建其他表。