Laravel 拉威尔叶片@产量可变范围

Laravel 拉威尔叶片@产量可变范围,laravel,laravel-5,blade,Laravel,Laravel 5,Blade,我有两页几乎完全相同。一个显示用户列表,另一个显示相同的列表,但包含更详细的信息。 因此,我调用了两个扩展同一包装器的视图。然而,Laravel抱怨说$user没有在verbose.blade.php中定义。我正在将$users传递给视图,该视图似乎对content.blade.php可用,但在foreach循环中创建的$user在verbose.blade.php中似乎无法访问 verbose.blade.php @extends('layout.content') @section('us

我有两页几乎完全相同。一个显示用户列表,另一个显示相同的列表,但包含更详细的信息。 因此,我调用了两个扩展同一包装器的视图。然而,Laravel抱怨说$user没有在verbose.blade.php中定义。我正在将$users传递给视图,该视图似乎对content.blade.php可用,但在foreach循环中创建的$user在verbose.blade.php中似乎无法访问

verbose.blade.php

@extends('layout.content')

@section('user')
    {{ dd($user) }}
@endsection
@extends('layout.content')

@section('user')
    {{ dd($user) }}
@endsection
@extends('layout.app')

@section('content')
    @foreach($users as $user)
        @yield('user')
    @endforeach
@endsection
noverbose.blade.php

@extends('layout.content')

@section('user')
    {{ dd($user) }}
@endsection
@extends('layout.content')

@section('user')
    {{ dd($user) }}
@endsection
@extends('layout.app')

@section('content')
    @foreach($users as $user)
        @yield('user')
    @endforeach
@endsection
content.blade.php

@extends('layout.content')

@section('user')
    {{ dd($user) }}
@endsection
@extends('layout.content')

@section('user')
    {{ dd($user) }}
@endsection
@extends('layout.app')

@section('content')
    @foreach($users as $user)
        @yield('user')
    @endforeach
@endsection
我也试过
@yield('user',['user'=>$user])


我如何才能让$user在verbose.blade.php中可用?

由于Laravel解析刀片模板的顺序,您会遇到这个错误

有时,我们程序员太沉迷于“不要重复你自己(干)”的原则,以至于我们走得太远了。这是其中一种情况——您只需将foreach循环直接放入verbose.blade.php:

@extends('layout.app')

@section('content')
    @foreach($users as $user)
        @yield('user')
    @endforeach
@endsection

您是否尝试使用@include

@include('user', ['user' => $user])

只是出于好奇(我知道这会修复错误,但我不知道这是否是一个解决方案)您是否在控制器函数
返回视图('verbose',compact('users','user'))中将用户作为一个值包含进去了?
?我假设您的控制器类似于
返回视图('verbose',compact('users'))
?如果这不是Laravel 3,你就不应该使用
@endsection
试试
@stop
。@Ben是的,我有that@saadel是这样吗?文档中的位置是什么?我也喜欢这个答案。如果他制作了partials/user.blade.php,这将很好地工作。如果我这样做,我将如何指定是否需要verbose还是non-verbose partial?也许我的问题不清楚我是否需要在两个视图之间切换。我会更新这个问题。实际上,在content.blade.php中的foreach中有更多信息。我不希望所有这些都放在我的verbose blade和NonErbose blade中。但如果我必须这样做,我会这样做。