LARAVEL错误:“抱歉,找不到您要查找的页面。”

时间:2019-01-29 17:14:33

标签: laravel-5.5 laravel-blade

我正在使用laravel 5.5.45版,并尝试首次学习Blade。我创建了一个文件views / layout / app.blade.php。并希望在views / contact.blade.php中扩展该app.blade.php文件。我使用@yield扩展了主刀片文件。

我需要更改路径文件夹吗?

views / layout / views / layout / app.blade.php


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Document</title>
</head>
<body>
    @yield('content')

    @yield('footer')

</body>
</html>

views / contact.blade.php


@extends('layouts.app')

@section('content')
    <h1>Contact Pafg</h1>
@endsection

当我点击URL localhost / cms / public / contact时,我看到标题中的错误。

2 个答案:

答案 0 :(得分:0)

您需要在路由目录中的web.php中添加自定义路由。

在文件末尾添加以下代码,以将定义的路线连接到视图。

Route::get('contact', function () { return view('contact'); });

最后,您可以通过localhost / contact来访问它

答案 1 :(得分:0)

首先,您需要提出请求以在浏览器上获得视图。现在,假设您的项目名称:cms可以假设您正在调用 cms / contacts (这是一个获取请求,仅用于获取简单的刀片视图)。现在这将转到路由目录中的 web.php ,您需要在其中处理该请求,例如

Route::get('contact', function() { return view('contact'); })

此处假设您的 contact.blade.php 位于 resources / views / contacts.blade.php 路径中。如果它在任何其他嵌套目录中,则需要添加该目录名称,例如返回视图(“ directory_name / contact”); 。 您可以使用控制器方法执行相同的操作,在这种情况下,您需要在路由文件中指定控制器和方法名称,并在该方法中返回刀片。例如

Route::get('contact', 'controller@methodName');

要退回刀片,您需要使用laravel的 view('blade_name')帮助程序,而不必像 cms / public / contact 这样打电话给您,只需使用 cms /联系人网址。

希望这会有所帮助。