应该返回abort(404)吗?

3
使用Laravel 5,应该返回abort(404)还是会中止并抛出错误以停止我的方法?我看到过两种情况,似乎都可以工作。
public function show($id)
{
    try {
        $item = Item::where('id',$id)->firstOrFail();
    }
    catch(ModelNotFoundException $exception)
    {
        return abort(404);
    }
    return view('item.show')->with(compact('item'));
}
2个回答

7
如果未找到模型,firstOrFail()会引发错误。如果您想捕获它,建议在global.php中执行此操作。
您不需要像文档中所示返回abort()

这是很好知道的,谢谢!话虽如此,我的问题更多地涉及语法。我不确定你是否需要 return abort(404); 还是仅使用 abort(404); 就足够了。 - whoacowboy
2
你不需要返回它。 - Pawel Bieszczad

3

403是“禁止访问”,而不是“页面未找到”。 - Limon Monte
@limonte 这只是一条消息。 - Imtiaz Pabel

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接