多种布局扩展了以下条件

时间:2019-05-06 14:59:04

标签: laravel laravel-blade

我正在尝试扩展以下用户类型的布局。 例如,如果用户是“管理员”,则他将获得不同的布局。我有三种类型的用户,我在视图中尝试了两种类型的用户,但没有用。

@if($user->type === 'professeur')
    @extends('layouts.dashprof')
@elseif($user->type === 'admin')
    @extends('layouts.dash')
@endif

我在视图中得到了变量$user

public function profile()
{
    return view('profile', array('user' => Auth::user()));
}

3 个答案:

答案 0 :(得分:1)

尝试一下,它对我有用

@extends(Auth::user()->type === 'professeur' ? 'layouts.dashprof' : 'layouts.dash' )
  

我不知道为什么这样做,但是@if块却不起作用。可能是因为   在@extends之外使用,某些专家可能对此有所帮助。

您还可以通过嵌套多个条件来进行操作:

@extends(Auth::user()->type === 'professeur' ? 'layouts.dashprof' : ( Auth::user()->type === 'student'? 'layouts.student ': 'layouts.dash' ) );

答案 1 :(得分:0)

@if($user->type == "professeur")
    @extends('layouts.dashprof')
@elseif($user->type == "admin")
    @extends('layouts.dash')
@endif

确保使用==运算符比较值。单个=试图分配一个值。

答案 2 :(得分:0)

尝试

@if(Auth::user()->type === 'professeur')
    @extends('layouts.dashprof')
@elseif(Auth::user()->type === 'admin')
    @extends('layouts.dash')
@endif

,您无需将用户对象返回到视图。