Php 将角色附加到用户-Laravel
我是laravel的初学者,我想为用户添加角色。这就是我试图这样做,但后来我得到了一个语法错误 注册表控制器Php 将角色附加到用户-Laravel,php,laravel,Php,Laravel,我是laravel的初学者,我想为用户添加角色。这就是我试图这样做,但后来我得到了一个语法错误 注册表控制器 return User::create([ 'name' => $data['name'], 'email' => $data['email'], 'phone' => $data['phone'], 'password' => bcrypt($data['passwo
return User::create([
'name' => $data['name'],
'email' => $data['email'],
'phone' => $data['phone'],
'password' => bcrypt($data['password']) ,
saveRoles($request->get('role'));
]);
用户模型
public function saveRoles($roles)
{
if(!empty($roles))
{
$this->roles()->sync($roles);
} else {
$this->roles()->detach();
}
}
如果
role
是一个角色ID数组(即使它是空的或只有一个ID),则无需使用detach()
或检查数组是否为空。所以,RegisterController@create
方法应如下所示:
protected function create(array $data)
{
$user = User::create([
'name' => $data['name'],
'email' => $data['email'],
'phone' => $data['phone'],
'password' => bcrypt($data['password'])
]);
$user->roles()->sync($data['role']);
return $user;
}