【问题标题】:Laravel 4 blade template won't render whole pageLaravel 4刀片模板不会呈现整个页面
【发布时间】:2015-02-17 15:16:12
【问题描述】:

我遇到了一个奇怪的问题,我的页面没有完整呈现。底部的部分被切断了,我不知道为什么。

我会粘贴代码,但它是一个 3000 多行的模板,我正在尝试实现。

我在dashboard.master中如下操作:

@include('dashboard.master.head')
...
@include('dashboard.master.header')
...
@include('dashboard.master.sidebar')
...
@include('dashboard.master.style_customizer')
...
@include('dashboard.master.page_header')
...
@yield('content')
...tons of lines here

它正确地呈现内容,然后过了一会儿,但它似乎在某个时候停止了。

我的刀片文件调用我的主人的示例

@extends('dashboard.master')
@section('content')
    <p>This is my content</p>
@stop

编辑: 我尝试删除所有内容并粘贴我拥有的 HTML 模板。它仍然只是在页面末尾停止渲染。所以我现在拥有的只是主文件和我的刀片模板中调用主文件的包含。

【问题讨论】:

  • 我的模板大约有 4.5K 行代码。这可能是它太长的问题吗?
  • 听起来不像,但你有什么例外吗?
  • 另一个选项是清除{application}/app/storage/views 文件夹,然后刷新包含该文件夹的页面。再次检查该文件夹,您将看到一个视图。把它拿出来,看看有什么问题
  • 没有错误,只是没有渲染代码。我会看看你的建议 ChrisForrence
  • 差不多。有应用程序/存储/视图和应用程序/视图。 app/storage/views 是应用程序访问的视图的缓存(文件名如“55d8270d0c946ca4eb922298fd1f4b27”或“a3a01557e108f13b1491b1bc546a0ac4”。删除 that 文件夹中的文件。

标签: php laravel blade


【解决方案1】:

Laravel 将维护已访问视图的缓存,这样它就不必为每个页面加载编译刀片模板。如果特定视图发生变化,它应该会刷新它,但听起来,出于某种原因,缓存没有被刷新。

您可以通过两种不同的方式清除视图缓存:

# Method 1
php artisan cache:clear

# Method 2
rm `ls /path/to/application/app/storage/views | grep -v '.gitignore'`

Reference

【讨论】:

    【解决方案2】:

    为了显示所有页面,将您最后的代码更改为:

    @extends('dashboard.master')
    @section('content')
        <p>This is my content</p>
    @show
    

    【讨论】:

    • 您好,感谢您的回复。还是同样的问题。我从字面上取出了所有刀片代码,复制并粘贴了我的模板,但它仍然在中途停止渲染。
    猜你喜欢
    • 2013-09-27
    • 2013-05-08
    • 2014-11-19
    • 2013-04-29
    • 2021-12-24
    • 2016-04-04
    • 2018-02-06
    • 1970-01-01
    相关资源
    最近更新 更多