无法在Laravel中显示404错误的特定视图

无法在Laravel中显示404错误的特定视图,laravel,laravel-4,Laravel,Laravel 4,我的app/start/global.php文件中有以下代码: App::missing(function($exception){ return Response::view('missing', array('url' => Request::url()), 404); }); @extends('master') @section('header') <h2>404 Error</h2> @stop @section('content')

我的app/start/global.php文件中有以下代码:

App::missing(function($exception){
    return Response::view('missing', array('url' => Request::url()), 404);
});
@extends('master')

@section('header')
    <h2>404 Error</h2>
@stop

@section('content')
    <p>
        Unable to locate page.
    </p>
@stop
我在app/view上有一个名为missing.blade.php的文件。但是,上面的代码给了我一个FatalErrorException,告诉我“在非对象上调用成员函数getPath()。我从中获得上述信息的错误页面的格式也很混乱

但是,当我将global.php中的代码更改为以下内容时,一切正常:

App::missing(function($exception){
    return Response::make("Page not found", 404);
});
我不明白发生了什么事。找不到管线时,如何显示特定视图

编辑: 这是我丢失的.blade.php文件:

App::missing(function($exception){
    return Response::view('missing', array('url' => Request::url()), 404);
});
@extends('master')

@section('header')
    <h2>404 Error</h2>
@stop

@section('content')
    <p>
        Unable to locate page.
    </p>
@stop

以下内容应适用于您,并使您能够更好地控制其他错误:

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
    }
});

我们可以看看你的missing.blade.phpI在我上面的编辑中添加了missing.blade.php的内容吗。我在另一个文件中使用了完全相同的布局,没有任何问题(即@extends和@section)。master.blade.php请将我的“App::missing…”代码替换为您的代码,并将案例404的“return Redirect::('/');”一行替换为“return Response::view('missing');”。现在,当我尝试转到未定义的页面时,它会转到该页面并部分加载我的模板。。。奇怪。这意味着重定向工作正常,可能是视图文件中的错误?尝试将视图文件的内容简化为“hello world”,看看它是否有效……啊,我明白了。是的,当我在missing.blade.php中放入类似“Hello world!”的内容时,它会起作用。但是为什么它不能与我的模板标记一起工作?@cornflakes24视图文件中的某些内容导致它不能正常工作,请尝试使用var_dump对其进行调试,直到找到断点。然而,我认为这是一个完全不同的问题。考虑关闭这个问题,并张贴一个新的,如果这个答案帮助原来的问题,可以自由地标记它。