Php @扩展(';布局';)laravel。刀片模板系统似乎不起作用
我试图使用laravel的模板系统:Php @扩展(';布局';)laravel。刀片模板系统似乎不起作用,php,laravel,Php,Laravel,我试图使用laravel的模板系统:blade,但在使用文件users.blade.php中的以下代码时,似乎不起作用: @extends('layout') @section('content') Users! @stop 和浏览器 @extends('layout') 你的布局在哪里 如果它位于app/views/layouts,那么它应该是 @extends('layouts.index') (假设名称为index.blade.php) 例如:@extends('layouts.
blade
,但在使用文件users.blade.php
中的以下代码时,似乎不起作用:
@extends('layout')
@section('content')
Users! @stop
和浏览器
@extends('layout')
你的布局在哪里
如果它位于app/views/layouts
,那么它应该是
@extends('layouts.index')
(假设名称为index.blade.php)
例如:
@extends('layouts.foo')
等于app/views/layouts/
中名为foo.blade.php
或foo.php
的文件。(取决于您是否使用刀片)如果您在/app/views/layout.blade.php中有一个包含
<p>Some content here</p>
@yield('content')
<p>Some additional content here</p>
我希望这能帮助你澄清一些事情。如果没有,您能否提供模板文件位置和相关内容?默认情况下,
Laravel
在views
文件夹中有一个layouts
文件夹,即app/views/layouts
,您可以在该文件夹中保存布局文件,也就是说,app/views/layouts/index.master.php
,如果你有类似的东西,那么你应该使用类似的东西:
@extends('layouts.master')
@section('content')
<p>Page Content</p>
@stop
因此,来自@section('content')
和@stop
之间视图的数据/内容将转储到布局的@yield('content')
位置
您可以为layout
文件使用任何名称,如果它是layouts/main.blade.php
,那么您应该使用
@extends('layouts.main')
我也有同样的问题。我们所做的是: 1.在routes.php中
Route::get('about', 'AboutController@index');
那
AboutController是app/controllers中的控制器文件AboutController.php
索引是该控制器内的一个函数
2.在app/controllers中创建AboutController.php
class class AboutController extends BaseController {
protected $layout = 'layouts.default';
$this->layout->content = View::make('pages.about');
}
您可以查看此引用:只需删除@extends('yourlayoutfile')之前的额外空间或任何内容即可。 它应该是在文件中呈现的第一件事情 我也遇到了同样的问题,尝试了很多方法。突然,我在@extends之前的文件开头找到了一个空格 移除了空间,工作正常 谢谢 格式:
@extends('layouts.default')
@section('content')
.....
@stop
---编辑----
如果这不起作用,请尝试:
复制文件中的所有内容,然后删除该文件
创建一个新文件并将其另存为filename.blade.php
<link rel="stylesheet" href= "/css/app.css" >
<section class="content" style="padding-top: 20px">
@yield('content')
</section>
只有在保存文件后,才能将内容粘贴到页面中。
保存更改并运行它
这很有效
谢谢。假设您有“master.blade.php”和“index.blade.php”。 这两个文件都在视图->主目录中。当您想通过调用“master.blad.php”在“index.blade.php”中使用@extends时,您应该在index.blade.php文件中写入以下语句:
@extends('home.master')
不是
只需使用不带签名的编码
UTF-8保存源代码
确保在App.blade.php中插入了css链接
<link rel="stylesheet" href= "/css/app.css" >
<section class="content" style="padding-top: 20px">
@yield('content')
</section>
对于我来说,默认情况下没有指向css文件的链接
在app.blade.php中插入以下链接
<link rel="stylesheet" href= "/css/app.css" >
<section class="content" style="padding-top: 20px">
@yield('content')
</section>
现在它可以正常工作了:)列出要确定的事情
- 正确指定文件名和路径
- 仔细检查.blade.php文件扩展名
<link rel="stylesheet" href= "/css/app.css" >
<section class="content" style="padding-top: 20px">
@yield('content')
</section>
@产量(‘含量’)
@extends('layouts.admin'))
@节(“内容”)
这是订单索引视图
@端部
试试这个
php artisan cache:clear
php artisan view:clear
php artisan route:clear
php artisan clear-compiled
是的,你说得对,错误是文件布局顶部的白色空格。blade.phpI我对Laravel是新来的,遗憾的是,blade模板很容易就因为一个空格放错了位置而破裂……有没有办法自动扩展每个文件?意思是我们不需要每次都写
@extends
。把你的整个答案放在一个代码块中会让人困惑。请只把代码放在代码块中。@kittycat3141:对不起,这是我的错误。