根据Laravel 4 docs我可以使用自定义响应抛出404:
App::abort(404, 'My Message');
然后我可以使用自定义页面处理所有404:
App::missing(function($exception)
{
return Response::view('errors.missing', array(), 404);
});
如何以与通用Laravel错误页面相同的方式将“我的消息”传递到视图。
谢谢!
答案 0 :(得分:5)
您可以通过Exception参数
捕获您的消息App::missing(function($exception)
{
$message = $exception->getMessage();
$data = array('message', $message);
return Response::view('errors.missing', $data, 404);
});
注意:代码可以减少,为了清楚起见,我这样写了。
答案 1 :(得分:5)
在Laravel 5中,您可以为/resources/views/errors
目录中的每个响应代码提供Blade视图。例如,404错误将使用/resources/views/errors/404.blade.php
。
手册中未提及的是视图内部您可以访问$exception
对象。因此,您可以使用{{ $exception->getMessage() }}
将您传递的信息传递到abort()
。