手记

laravel find和findorfail的区别

首先数据库创建几条测试数据

先看find的效果

Route::get('/test',function (){
      $test=DB::table('test')->find(10);
        dd($test);
});

我没有这条数据打印出null。这会不会有点尴尬
在看看findorfail

Route::get('/test',function (){
      $test=DB::table('test')->findorfail(10);
        dd($test);
});


这可吓我一跳说Query Builder没有定义这个方法,感觉看手册压压惊
findOrFail 和firstOrFail 方法会获取查询到的第一个结果。然而,如果没有任何查询结果,Illuminate\Database\Eloquent\ModelNotFoundException 异常将会被抛出:
创建个model

Route::get('/test',function (){
      $test=\App\Test::findorfail(10);
    dd($test);
});


看到这我又可以扩展他,可以自定义404页面
在views/errors/下创建404.blade.php
我们重新试一下

如有错误求下方留意求共同进步

3人推荐
随时随地看视频
慕课网APP