1

当我尝试在容器内插入更多内容时,只会出现contacts.create子视图,我不知道为什么。

@extends('layout')

@section('container')
    @include('contacts.create')
    @include('products.create')
@stop

只需返回contacts.create 或第一个@include。感谢帮助。

4

2 回答 2

2

你能做这个吗?

@extends('layout')

@section('contacts')
    @include('contacts.create')
@stop

@section('products')
    @include('products.create')
@stop
于 2013-07-30T00:43:58.837 回答
1

您的包含语法很好,所以我的猜测是您的刀片文件中有语法错误,这导致刀片编译器在此过程中不会返回任何内容。

  1. 仔细检查您尝试包含的文件是否在名称中包含刀片,即位于:/products/create.blade.php

  2. 尝试用一个简单的 <p>this is products.create</p> 语句替换 products.create 的内容。如果这显示正常,您可以从那里向后工作并再次构建您的文件以查看导致它不显示的原因。

  3. 如果你真的想看看发生了什么,你也可以从刀片编译器中转储返回语句。

进入 BladeCompiler.php 文件,找到 compileIncludes 函数: 在 return 语句之前添加:

var_dump(preg_replace($pattern, $replace, $value));

只要确保你运行 composer dump-autoload 之后。

另外,您目前是从布局中查看内容,还是仅从contacts.create 中查看内容?如果它仅从联系人呈现,则问题可能在布局文件中。

于 2013-07-30T04:03:05.540 回答