我只想给新注册的用户分配一个角色。我如何在Entrust的Laravel 5中实现这一点?我正在使用Entrust来获取角色和权限。如何在委托中分配默认用户角色?
上次我尝试在用户注册供应商文件夹中的文件后触发事件。有没有办法在不修改供应商文件夹内的任何内容的情况下触发角色分配事件?
如果是,那么我应该在哪里发生事件?我不想修改供应商文件夹内的任何内容,例如postRegister()
中的触发事件AuthenticatesAndRegistersUsers.php
,因为新更新会覆盖我的代码。
此链接上的代码看起来不错,但我不知道委托是否有注册事件。 http://laravel.io/forum/07-02-2014-entrust-assign-role-on-user-signup
这里是我的代码在routes.php文件:
// this event is firing on user login and i am getting user object
Event::listen('auth.login', function($user) {
var_dump($user);
die(__LINE__);
});
// this event is not firing on user registration
Event::listen('auth.register', function($user) {
var_dump($user);
die(__LINE__);
// $donor_role = DB::table('app_roles')->where('name', '=', 'donor')->pluck('id');
// $user->roles()->attach($donor_role);
// return false;
});
请帮助我。
您的解决方案给我'调用一个成员函数的角色( )在'routes.php'上的null上 –