我想根据条件扩展模板。我知道我可以在刀片中使用@if @else
语句。我正在做同样的事情,但刀片扩展了两个模板。我不知道为什么。
@if(isset(Auth::user()->id))
@extends('layouts.adminlayout')
@else
@extends('layouts.default')
@endif
@section('content')
i am the home page
{{ isset(Auth::user()->id) }}
@stop
因为,您可以看到我正在检查用户是否登录,然后扩展模板布局。但它从两种布局都延伸出来。
请帮帮我。
答案 0 :(得分:8)
扩展刀片视图中的第一行必须是@extends
指令。
尝试使用三元运算符。
@extends(isset(Auth::user()->id) ? 'layouts.adminlayout' : 'layouts.default');
更新基于角色的布局。有关更多条件,请参阅this问题。
@extends((!isset(Auth::user()->id))? 'layouts.default': ((Auth::user()->role == 'admin') ? 'layouts.adminlayout' : 'layouts.moderatorlayout'));
答案 1 :(得分:0)
尝试此代码,肠胃很重要
@extends(Auth::user()->rol_id == 1 ? 'layouts.admin' : ((Auth::user()->rol_id == 2) ? 'layouts.client' : 'layouts.client'))