php - laravel:防止返回 null 的查询
问题描述
我有一个查询,它检查用户表中的用户,该用户具有特定代码并获取该用户,并将其设置为 $mainCustomer。我刚刚意识到在某些情况下可能没有用户使用该代码。我认为我在下面的检查! $mainCustomer
会覆盖我,但我相信如果查询本身为空,我可能会收到错误。如何防止查询出现错误?
$mainCustomer = User::where('code', '=', $value_code)->first();
if (! $mainCustomer) {
log_info("doesn't exist");
return;
}
解决方案
return User::where('code', '=', $value_code)->firstOrFail();
该方法将检索查询的第一个结果;但是,如果没有找到结果,Illuminate\Database\Eloquent\ModelNotFoundException
则会抛出一个:如果没有捕获到异常,则会自动向用户发送 404 HTTP 响应。使用这些方法时,无需编写显式检查以返回 404 响应。
这就是你所追求的吗?
推荐阅读
- java - 如何用字符串中的当前日期值替换 GMT 格式的日期
- python - Python 生成器以及如何根据字典中的键正确迭代以删除记录,该键出现在单独的列表中
- git-bash - Git Bash 选项卡在 Windows 终端上显示路径而不是标题“Git Bash”
- python - 为什么这个 AES CTR 解密没有按预期工作?
- html - 你能在 HTML5 拖放 API(不是 jQuery-UI)中限制拖动方向吗?
- python - 改进 Python 中的多个 findall 执行
- javascript - 如何更改使用 javascript 键入的每个字母的字体粗细
- c++ - IAMCameraControl 接口。如何判断相机何时完成移动?
- node.js - 在 node-postgres 模块上显示带有时区的日期类型
- github - wget命令没有下载github仓库,“Not a directory”报错?