我的app / start / global.php文件中包含以下代码:
App::missing(function($exception){
return Response::view('missing', array('url' => Request::url()), 404);
});
我在app / view上有一个名为missing.blade.php的文件。但是,上面的代码给了我一个FatalErrorException,告诉我"在非对象上调用成员函数getPath()"。我从上面获得上述信息的其他漂亮错误页面的格式也搞砸了。
但是当我将global.php中的代码更改为以下内容时,一切正常:
App::missing(function($exception){
return Response::make("Page not found", 404);
});
我不知道发生了什么。如何在找不到路线时显示特定视图?
修改 这是我的missing.blade.php文件:
@extends('master')
@section('header')
<h2>404 Error</h2>
@stop
@section('content')
<p>
Unable to locate page.
</p>
@stop
编辑2: 同样在我的app / views文件夹中,我有一个master.blade.php文件,其结构如下:
...
@yield('header')
...
@yield('content')
...
答案 0 :(得分:2)
以下内容对您有用,并且您可以更好地控制其他错误:
App::error(function(Exception $exception, $code)
{
Log::error($exception);
switch ($code)
{
case 403:
return 'Your 403 message';//or load any custom view
break;
case 404:
return Redirect::to('/');//or load any custom view
break;
case 500:
return 'Your 500 Error Message';//or load any custom view
break;
default:
return Redirect::to('/');//or load any custom view
}
});