在某个路线中,如果找不到某个猫的ID,我会返回一个带有自定义消息的404:
App::abort(404, 'Invalid cat id');
我想将上面的自定义消息传递给Laravel的404刀片,但我无法弄清楚如何将此消息传入其中。看来我将不得不破解一些Laravel的代码来做到这一点。
我也试过这个,它显示自定义消息,但http状态代码是200而不是404,这不是我想要的:
view('errors.404')->with('message', 'Invalid cat id');
我觉得必须有一种更简单,更标准化的方法来在Laravel中做一些基本的事情。什么是正确的方法?
答案 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}}