laravel blade @include not working

Sta*_*y J 4 php php-include laravel blade laravel-4

我正在尝试使用刀片语法在我的主页中包含文件: -

@foreach($data as $articles)
    @include(app_path().$articles->path)
    <br />
@endforeach
Run Code Online (Sandbox Code Playgroud)

这不起作用.

错误说: -

View [/var/www/blogproject/project/app/pages/articles/first-post.php] not found
Run Code Online (Sandbox Code Playgroud)

我甚至尝试过只包括第一页: -

@include(app_path().'/pages/articles/first-post.php')
Run Code Online (Sandbox Code Playgroud)

但正常的PHP包括工作正常: -

<?php include(app_path().'/pages/articles/first-post.php'); ?>
Run Code Online (Sandbox Code Playgroud)

请帮忙

rmo*_*bis 18

那是因为该文件不在app/views目录中.当您致电时@include('filename'),Blade会自动在apps/views目录中查找具有该名称的任何文件.此外,你不应该写的文件扩展名,当叶片会自动寻找与文件.blade.php.php扩展.

如果要使用@include标记上其他目录中的文件,请将目录添加到app/config/view.php上的paths数组中.在你的情况下,它是这样的:

应用程序/配置/ view.php

<?php

    // ...

    'paths' => array(
        __DIR__.'/../views',
        __DIR__.'/../pages'
    );
Run Code Online (Sandbox Code Playgroud)

然后,你就像这样在刀片上调用它:

@include('articles/first-post')
Run Code Online (Sandbox Code Playgroud)