laravel中firstorcreate和updateorcreate的操作区分
Posted willem_chen
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了laravel中firstorcreate和updateorcreate的操作区分相关的知识,希望对你有一定的参考价值。
laravel中firstorcreate和updateorcreate的操作区分
firstorcreate
Model::firstorcreate(param1, param2)
中的,第一个参数是条件。第二个是需要操作的数据。
操作顺序是:
1、先尝试查询该条件下的记录。
2、如果记录不存在则进行存储,存储完成后,返回该记录模型。
updateorcreate
Model::updateorcreate(param1, param2)
中的,第一个参数是条件。第二个是需要操作的数据。
操作顺序是:
1、先尝试查询该条件下的记录。
2、如果记录存在则进行记录的更新操作,不存在的话执行存储操作,然后返回该记录模型。
如果你想知道上面的操作执行是:
第1个操作
还是第2个操作
可以获取操作完成模型的wasRecentlyCreated属性,如果属性值是true表示执行的是第二个操作,否则就是第一次操作。
测试
数据不存在返回:true
数据存在返回:false
以上是关于laravel中firstorcreate和updateorcreate的操作区分的主要内容,如果未能解决你的问题,请参考以下文章
在 Laravel 中,有没有办法找出是不是创建了 `firstOrCreate` 或者是不是找到了行?
Laravel FirstOrCreate和Save()重复输入
Laravel Eloquent - 关系上的 firstOrCreate()
Laravel 8 - firstOrCreate() 不返回数据库中设置的默认值