Laravel 曾经定义收益内容
Posted
技术标签:
【中文标题】Laravel 曾经定义收益内容【英文标题】:Laravel once defind yield content 【发布时间】:2014-10-21 03:45:49 【问题描述】:我正在尝试从控制器中获取我的内容。但我不想一次又一次地定义我想产生“内容”部分
这个怎么存档,不用放了
@section('body')
<h1>Content</h1>
<p>More content</p>
@stop
再次是每个视图
例如,带有 RenderBody() 的 ASP.NET MVC
【问题讨论】:
您在view
中哪里使用了yield
?你的控制器代码在哪里?您使用的是Blade template
哪个extends
主布局?
【参考方案1】:
使用Blade
模板引擎,在您的“app/views/layouts”文件夹中创建一个主layout
,类似于此模板:
<!-- master.blade.php -->
<html>
<head></head>
<body>
<div class="container">
@yield('content')
</div>
</body>
</html>
然后在你的every child view中,扩展master view
,例如:
<!-- home.blade.php -->
@extends('layouts.master')
@section('body')
<h1>Content</h1>
<p>More content</p>
@stop
所以,只要你会使用这样的东西:
return View::make('home');
您的子视图将扩展主视图,并且内容将在 div.container
中生成。
【讨论】:
问题是我不想再次为每个视图使用“部分”。我想设置 de section 一次 en 永远不要为子视图重复它以上是关于Laravel 曾经定义收益内容的主要内容,如果未能解决你的问题,请参考以下文章