标题大多是不言自明的。 Eloquent有一个名为
的方法
updateOrCreate()
在此处记录:https://laravel.com/docs/5.5/eloquent#other-creation-methods
在某些情况下,这非常有用。但是在执行updateOrCreate()
之后,我需要更新/创建的对象或其主键或其ID。
当然我可以做MyModel::where(...)->first()
并再次提供所有这些数据,但这很笨拙,可能是一些昂贵的请求。
但updateOrCreate()
仅返回 true 或 false 。
有什么想法吗?
答案 0 :(得分:9)
该方法将返回已创建或更新的对象的ID,因此只需执行以下操作:
$object = Model::updateOrCreate(['name' => 'John'], ['age' => 25]);
$id = $object->id;
答案 1 :(得分:-2)
查询最后一个
$lastRecord = MyModel::last();
或者
$lastRecord = MyModel::orderBy('id', 'DESC')->first();