Вот пользовательский фрагмент кода регистрации Laravel, который я создал для пользователей для регистрации в моем приложении.
public function registration(Request $request)
{
// validators
$user = $this->create($request->all());
$this->guard()->login($user);
return response()->json(['status' => true, 'msg' => "Successfully registered"], 200);
}
protected function create(array $data)
{
$user = User::create([
'first_name' => $data['first_name'],
'last_name' => $data['last_name'],
'email' => $data['email'],
'password' => bcrypt($data['password']),
]);
$user->roles()->attach(\App\Role::where('name', 'Subscriber')->first());
return $user;
}
protected function guard()
{
return Auth::guard();
}
Все по-прежнему работает отлично, за исключением того, что не назначает роли пользователю.Я попытался tinker
создать пользователя и attach
роль для пользователя.Это также работает в tinker
.Модель
Role
имеет отношение многие ко многим с моделью User
.