应该中止(404);被退回?

时间:2015-05-18 03:48:25

标签: laravel laravel-5

使用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 个答案:

答案 0 :(得分:5)

如果找不到模型,

firstOrFail()将抛出错误。如果你想抓住它,我建议你在global.php

中做

哟不需要返回abort()

中显示的class test { public static void main(String args[]) { System.out.println(runlength("aaabbc")); } static String runlength(String s) { String current=""; int count = 1; char[] c = s.toCharArray(); for(int i = 1; i < c.length; i++) { if (c[i]==c[i-1]) count++; else { current = current + count + Character.toString(c[i-1]); count = 1; } } return current + count + Character.toString(c[c.length-1]); } }

答案 1 :(得分:1)

您可以中止404或403错误。http://laravel.com/docs/5.0/errors#http-exceptions

abort(404, 'Page Not Found');