2

亲爱的stackoverflowers,

首先,我想告诉你,我是 laravel 4 的新手,所以如果我问这个问题是在自欺欺人,那就这样吧..

我已经建立了一个项目并想使用模板。到目前为止,我有这些文件夹/文件:

--views
----home
------home.blade.php
------login.blade.php
----layouts
------master.blade.php

我有一个 get-route 可以看到“home.home”的新视图,其中包含以下代码:

@extends('layouts.master')
@section('content')
{{-- zet via TAB om naar h1 met klasse 'subheader'
h1.subheader --}}
<div class="panel">
    <div class="page-header">
        <h1>Startpagina</h1>
    </div>

@if(Auth::Guest())
    @yield('login')
@else
@endif

</div>
@stop

现在我想制作另一个模板,它可以用作局部视图(这也可以是页眉、页脚……,但现在它是登录表单)。我以为这会成功,但显然它没有......

@extends('layouts.master')
@section('login')
    <p>Login form comes here</p>
@stop

有什么建议么?提前致谢。

HS。

4

1 回答 1

1

而不是@extends登录文件中的语句,您应该将其作为文件包含在主页中(以及您希望它出现的所有视图)

尝试:

@if(Auth::Guest())
    @include('login')
@else

@endif

并在登录视图本身中删除@extends('layouts.master'),@section('login')和。@stop您的主页视图中存在的所有变量也将在您的登录视图中可用。

如果您希望登录表单充当部分以自己的逻辑运行(或者它需要额外的数据),您应该考虑使用视图作曲家

于 2013-10-28T14:07:25.700 回答