【问题标题】:Laravel: Authentication and Roledependent includeLaravel:身份验证和角色依赖包括
【发布时间】:2017-03-12 14:24:33
【问题描述】:

第一个 Laravel 项目。 我想在身份验证中实现这个逻辑:

Check if user logged in
 - If no: go to log in screen (views/auth.login)
 - If yes: check his role
    - if admin: Load admin navbar
    - if user: Load user navbar

对于登录,我想使用 login.blade.php,对于“索引”,我想使用 index.blade.php

在 layouts.master 的正文中,我有一个带有“nav”类的部分,在此部分中我想包含一个管理员或用户菜单,具体取决于用户角色。

最好的方法是什么?

【问题讨论】:

  • 展示你的努力..
  • 最好的方法是将这个pseudo code转换成code

标签: php laravel laravel-5 laravel-5.4


【解决方案1】:

网上有无数的认证教程。只是谷歌它。你会发现一些东西。然后想办法识别admin;通过 role_id,或者简单地使用像 isAdmin = true 这样的属性。

在用户模型中,定义一个函数isAdmin(),根据一些验证返回真或假。

在你看来

@if( Auth::user()->isAdmin())
    @include('inludes.nav.admin')
@else 
    @include('inludes.nav.user')
@endif

基于角色的身份验证教程示例:http://alexsears.com/article/adding-roles-to-laravel-users/

如果你按照他的教程,在视图中你会这样做

@if( $user->hasRole('admin') )  //or something similar

【讨论】:

    【解决方案2】:

    重定向到登录页面已经存在。 在您看来,您可以检查角色并加载正确的栏。

    【讨论】:

      猜你喜欢
      • 2013-05-16
      • 2015-01-01
      • 1970-01-01
      • 2021-03-10
      • 2017-07-15
      • 2016-09-23
      • 2015-01-09
      • 2012-10-09
      • 2015-05-31
      相关资源
      最近更新 更多