确定Laravel 5.7中每个用户级别/角色的布局

时间:2018-10-23 03:29:10

标签: php mysql laravel

美好的一天 我的项目中有3个不同的级别/角色 管理员 就业 客户

我想根据级别确定一页的布局,这是我的代码,我使用Auth :: user

@if(Auth::user()->role === 'employment')
    @extends('layouts.menuemployments')
@elseif (Auth::user()->role === 'admin')
    @extends('layouts.menuadmin')
@elseif(Auth::user()->role === 'customer')
    @extends('layouts.menucustomer')
@endif 

但是当我尝试这样做时,代码向我展示了3个菜单,这是什么问题?

1 个答案:

答案 0 :(得分:0)

您可以使用此示例代码。

@php
   if(Auth::user()->role === 'employment') {
      $layoutDirectory = 'layouts.menuemployments';
   } elseif (Auth::user()->role === 'admin') {
      $layoutDirectory = 'layouts.menuadmin';
   } else {
      $layoutDirectory = 'layouts.menucustomer';
   }
@endphp

@extends($layoutDirectory)

当然,可以通过移动中间件中的@php块使其更整洁来改善它

请参见https://laravel.com/docs/5.7/middleware