Laravel的刀片不能正常工作

问题描述:

我刚刚开始与Homestead新鲜的Laravel 5.3项目,我试图为我的网站建立一个非常简单的结构,但我遇到了意想不到的问题。Laravel的刀片不能正常工作

- resources 
-- views 
--- layouts 
------- master.blade.php 
--- partials 
------- home.blade.php 
------- about.blade.php 

-- index.blade.php 

master.blade.php

<!DOCTYPE html> 
<html lang="en"> 
    <head> 
    <meta charset="utf-8"> 
    <meta http-equiv="X-UA-Compatible" content="IE=edge"> 
    <meta name="viewport" content="width=device-width, initial-scale=1"> 
    <!-- The above 3 meta tags *must* come first in the head; any other head content must come *after* these tags --> 
    <title>@yield('title')</title> 
    <!-- Bootstrap --> 
    <link href="{{URL::asset('css/app.css')}}" rel="stylesheet"> 

    <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries --> 
    <!-- WARNING: Respond.js doesn't work if you view the page via file:// --> 
    <!--[if lt IE 9]> 
     <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script> 
     <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script> 
    <![endif]--> 
    </head> 
    <body> 
    @yield('content') 
    <script src="{{URL::asset('js/app.js')}}"></script> 
    </body> 
    </html> 

出于某种原因,<head>标签之间的内容输出到<body>标签。

enter image description here

index.blade.php - 扩展主

@extends('layouts.master') 

@include('partials.nav') 

@section('content') 

    <p>yes</p> 

@endsection 

我该如何解决这个问题?

+0

你可以显示扩展master.blade.php的视图吗? –

+0

如上所述,但也是什么index.blade.php文件之外的资源文件夹等 –

+0

增加,请参阅更新的部分 – ProEvilz

@include('partials.nav')应该在master.blade.php中。当扩展一个模板时,Laravel已经有线策略将未包含的模板放入。

+0

因此,使用扩展时不可能使用include。 – ProEvilz

+0

好,ClearBoth。阿什利,你可以在扩展时加入,但你应该在@section范围内加入。 –

+0

@AshleyBrown你可以在这里找到更多关于这个的信息https://laravel.com/docs/5.2/blade#extending-a-layout。大多数情况下,子模板将包含来自主模板的部分。 – ClearBoth