我基本上想要的是用户权限。
我的数据库中有一个名为“帐户”的表。有一个名为“group_id”的列。
我想在 'group_id' = 3 时设置它,然后用户是管理员。然后他可以查看特殊站点、按钮和类似的东西。我尝试过实现类似的东西:
public function ($roleName) {
$role = $this->roles;
if ($role->name == $roleName) {
return true;
}
return false;
}
另外,我不知道需要什么以及如何需要该模型,我是否需要一个新模型之类的东西。
老帖子,但也许有人会发现这很有用
向您的 User 模型添加一个方法,如果用户是管理员,则该方法返回 true。在我们的例子中,它只是“我们的 group_id 等于 3 吗?”
// models/User.php
class User extends Eloquent
{
...
public function isAdmin()
{
return $this->group_id == 3;
}
}
接下来添加一个可用于保护路由的过滤器
// filters.php
Route::filter('admin', function($route, $request)
{
if ( ! Auth::user()->isAdmin())
{
return App::abort(401, 'You are not authorized.');
}
});
最后使用过滤器来保护一组路由。在这种简化的情况下,只有管理员用户可以访问/admin
// routes.php
Route::group(array('before' => array('auth|admin')), function()
{
Route::get('/admin', function()
{
return Response::make("You're an admin!");
}
});
基于这篇文章:http://laravelsnippets.com/snippets/admin-route-filter http://laravelsnippets.com/snippets/admin-route-filter
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)