继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

laravel find和findorfail的区别

施帅帅
关注TA
已关注
手记 5
粉丝 8
获赞 8

首先数据库创建几条测试数据
图片描述
先看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
我们重新试一下
图片描述
如有错误求下方留意求共同进步

打开App,阅读手记
3人推荐
发表评论
随时随地看视频慕课网APP