【问题标题】:View [layouts.app] not found. Laravel Framework 5.4.36查看 [layouts.app] 未找到。 Laravel 框架 5.4.36
【发布时间】:2018-02-17 00:24:21
【问题描述】:

我在使用 Laravel Framework 5.4.36(在 Visual Studio 代码上)时遇到问题。我正在尝试构建一个简单的布局,但无论我尝试了多少次,我的浏览器都会出现同样的错误:

未找到查看 [layouts.app]。 (查看:C:\wamp64\www\lsapp\resources\views\pages\services.blade.php)

如您所见(下图),文件恭敬地在那里,在正确的路径中。

这是我的布局 app.blade.php 的代码:

<!DOCTYPE html>
<html lang="{{ app()->getLocale() }}">
<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title>{{config('app.name','LSAPP')}}</title>
</head>
<body>
       @yield('content')
</body>

这是我来自 services.blade.php 的代码

@extends('layouts.app')
@section('content')
        <h1>services</h1>
        <p>This is the services page</p>
@endsection

我还安装了 Laravel Blade Snippets v 1.13.0(1.14.1 给了我另一个问题)。

我尝试更改布局文件和扩展参数内部的名称和路径。任何想法为什么这不起作用?

非常感谢您的帮助..!

【问题讨论】:

    标签: laravel laravel-5


    【解决方案1】:

    您必须引用相对于resources/views 目录的刀片模板。根据截图你的目录结构是:

    resources
      ↳views
        ↳pages
          ↳layouts
             app.blade.php
    

    因此,您的app.blade.php 布局可用作pages.layouts.app

    @extends('pages.layouts.app')
    

    【讨论】:

    • 非常感谢您的帮助..!!!这行得通..!!!我在这里发帖之前搜索了 3 个小时.. !!再次谢谢你.!!!
    【解决方案2】:

    改变

    @extends('layouts.app')
    

    @extends('pages.layouts.app')
    

    【讨论】:

      【解决方案3】:

      只是对上述答案的补充。因为在某些情况下,这些答案可能无法解决您的问题(主要是当您不在本地服务器上时)。

      请记住,命名空间是区分大小写的(尤其是在实时时)。因此,当在 layouts 文件夹中创建文件的扩展名时,如下所列 service.blade.php 文件中所示:

      @extends('layouts.app')
      @section('content')
          <h1>services</h1>
          <p>This is the services page</p>
      @endsection
      

      请确保 layouts 文件夹的字母大小写与您引用它的地方完全相同。

      例如: 如果您的 layouts 文件夹是使用名称标签 Layouts 创建的,并且您试图在 service.blade.php 文件中以 layouts.app 而不是 Layouts.app 访问此文件夹,那么肯定会出错。

      【讨论】:

        【解决方案4】:

        问题是你把'layouts'文件夹放在'pages'里面,实际上,它应该只在view里面。

        目录结构应该是:

        -view
            -layouts
            -pages
        

        【讨论】:

          【解决方案5】:

          我也遇到了这个问题,并且在我发现一个错误之后尝试修复它并且它非常小:) ...只需检查您的布局文件夹拼写。在刀片文件“@extends('layouts.app')”中写成“layouts”,我们在视图名称中创建一个文件夹作为布局。

          【讨论】:

          • 这个问题已经被回答和接受。为什么要添加此答案,它不会为之前接受的答案添加任何有用或额外的内容。
          猜你喜欢
          • 2021-07-02
          • 1970-01-01
          • 2018-03-09
          • 2015-11-28
          • 1970-01-01
          • 2019-09-11
          • 2017-05-30
          • 2018-12-23
          • 2014-06-02
          相关资源
          最近更新 更多