如何将自定义消息传递到Laravel 5中的404刀片

时间:2015-05-10 00:22:54

标签: http-status-code-404 laravel-5

在某个路线中,如果找不到某个猫的ID,我会返回一个带有自定义消息的404:

App::abort(404, 'Invalid cat id');

我想将上面的自定义消息传递给Laravel的404刀片,但我无法弄清楚如何将此消息传入其中。看来我将不得不破解一些Laravel的代码来做到这一点。

我也试过这个,它显示自定义消息,但http状态代码是200而不是404,这不是我想要的:

view('errors.404')->with('message', 'Invalid cat id');

我觉得必须有一种更简单,更标准化的方法来在Laravel中做一些基本的事情。什么是正确的方法?

3 个答案:

答案 0 :(得分:4)

到处都说你可以做一个简单的

abort(404, 'Invalid cat id');

但是我没有在文档中找到它。我的解决方案:

View::share('message','Invalid cat id');
abort(404);

这将与所有视图共享de $ message变量,您将拥有404 HTTP代码。然后在404.blade.php文件中执行此操作:

{{ $message }}

答案 1 :(得分:2)

您可以使用

return response()->view('errors.404', ['message' => 'Invalid cat id'], 404);

答案 2 :(得分:0)

我只是这样做:

{{ $msg }}

在视图中(在 404.blade.php 文件中)写道:

some message

然后你会在视图中看到:

{{1}}