laravel 用户通过多对多关系中的角色注册

 2022-02-12 

laravel user registration by roles in many to many relationship

在我的应用程序中,我有两种类型的用户"title"


当用户选择单选按钮时,您将获得该值并调用用户关系来分配角色。

1
 $role = $request->role //get this value from radio

由于这是注册方法,所以您将首先创建用户并调用关系来附加角色。

1
$user = User::create($request->only('required fields ...'));

现在将角色附加到创建的用户。

1
$user->roles()->attach($role);  //this line is actual answer to your question

这将使用用户角色

填充您的数据透视表

确保你在 User.php 模型中定义了 roles() 方法

1
2
3
4
5
6
public function register (Request $request){
    $role = $request->role; //this is not necessary to save role value in variable you can get it directly from request object
    $user = User::create($request->only('required fields'));
    $user->roles()->attach($role or $request->role); // you can get role value directly from $request object.

}