我试图理解laravel的基本刀片模板引擎,但我似乎无法通过一个基本的例子。我的刀片模板没有加载。它只显示白屏,但当我将hello.blade.php删除到hello.php时,它可以正常工作。有什么建议吗?
routes.php文件
Route::get('/', 'PagesController@home');
PagesController.php
<?php namespace App\Http\Controllers;
use App\Http\Requests;
use App\Http\Controllers\Controller;
use Illuminate\Http\Request;
class PagesController extends Controller {
/**
* Display a listing of the resource.
*
* @return Response
*/
public function home()
{
return Views('hello');
}
}
hello.blade.php
<html>
<head>
<title>Hello World</title>
</head>
<body>
<div class="container">
<div class="content">
<div class="title">Starting to learn Laravel 5</div>
</div>
</div>
</body>
</html>
答案 0 :(得分:1)
没有Views
助手。它被称为view
:
return view('hello');
答案 1 :(得分:0)
嗯,我有同样的问题&#34;白屏问题&#34;。 laravel中的刀片文档非常混乱。然后,试试这个:
创建一个布局,让我们说template.blade.php
:
<html>
<head>
<title>Hello World</title>
</head>
<body>
<div class="container">
<div class="content">
<div class="title">Starting to learn Laravel 5</div>
@yield('view_content')
</div>
</div>
</body>
创建一个要包装到模板中的简单视图,假设为hello.blade.php
:
@extends('template')
@section('view_content')
This is my view content
@stop
现在,在你的控制器中只需调用视图而不是布局:
public function home(){
return view('hello');
}
答案 2 :(得分:0)
我不确定它是如何工作的,无论扩展名如何在控制器中语法都不正确。您返回的视图不是视图... return view('hello')
。从技术上讲,您应该看到以下内容:
FatalErrorException in PagesController.php line 18:
Call to undefined function App\Http\Controllers\Views()
即使app_debug为false,您也应该看到Whoops, looks like something went wrong.
答案 3 :(得分:0)
当我写错字时,我得到了这个:
return views('abc');
而不是
return view('abc');
额外的s
正在扼杀一切。