检查laravel模型是否已保存或查询已执行

检查laravel模型是否已保存或查询已执行,第1张

检查laravel模型是否已保存或查询已执行 检查模型是否保存

save()
会返回一个布尔值,保存或 保存。因此,您可以执行以下 *** 作:

$saved = $myModel->save();if(!$saved){    App::abort(500, 'Error');}

或直接保存在if中:

if(!$myModel->save()){    App::abort(500, 'Error');}

请注意,

save()
像您的示例一样,连续两次调用没有意义。顺便说一句,许多使模型无法保存的错误或问题总会引发异常。

检查查询是否返回结果

first()``null
当找不到记录时将返回,以便您的检查有效。但是,您也可以使用替代方法
firstOrFail()
ModelNotFoundException
当什么都没有发现时,它将自动引发:

$UserProduct = Product::where('seller_id', '=', $userId)->firstOrFail();

find()
和都一样
findOrFail()

检查查询是否执行

不幸的是,

create
这并不容易。来源:

public static function create(array $attributes){    $model = new static($attributes);    $model->save();    return $model;}

如您所见,它将使用创建一个新的模型实例,

$attributes
然后调用
save()
。现在,如果
save()
在哪里返回true,您将不会知道,因为无论如何都会得到一个模型实例。例如,您可以做的是检查模型ID(因为只有在保存记录并返回新创建的ID之后才可用)

if(!$newUser->id){    App::abort(500, 'Some Error');}


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/4918249.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-11-12
下一篇2022-11-12

发表评论

登录后才能评论

评论列表(0条)

    保存