【发布时间】:2023-12-22 04:45:01
【问题描述】:
我想执行类似于以下的操作,其中我正在创建的对象的属性取决于前一个对象的属性。
$last_row = Model::orderBy('id', 'desc')->first();
$new_object = new Model()
$new_object.attr1 = $last_row->id + 1
$new_object.attr2 = $last_row->id + 2
$new_object->save()
您如何在 Eloquent 中执行必要的锁定以确保第 1 行一次仅由一个事务执行?
如果在保存其中一个对象之前对两个对象执行第 1 行,我需要添加或编辑哪些其他代码以确保两个对象不具有相同的 attr1 和 attr2。
【问题讨论】:
-
返回模型::orderBy('id', 'desc')->first();你能用这个检查一下吗
-
获取最后一行本身不是问题。让我澄清一下。