我正在使用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时,我看到标题中的错误。
答案 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 /联系人网址。
希望这会有所帮助。