如何在同一个Laravel Store方法中复用前一次Create操作的数据?
如何在同一个Store方法中复用第一次Create的字段值?
当然可行啦!你只需要把第一次create操作返回的模型实例存到变量里,就能直接访问它的任意字段了。
修改后的代码示例如下:
public function store(Request $request) { // 将第一次创建的模型实例保存到变量中 $sendData = SendData::create($request->validated()); // 直接通过实例获取你需要的字段值,把下面的`random_field`替换成实际字段名 $random_data_from_form1 = $sendData->random_field; $data_from_form2 = $request->input('data_form2'); SendMoreData::create([ 'field1' => $random_data_from_form1, 'field2' => $data_from_form2 ]); }
几个关键点说明:
- Laravel的
create()方法会自动返回刚创建的模型实例,所以我们可以直接用变量接住它。 - 访问字段的时候,直接用
实例->字段名的形式就行,和你平时操作模型实例的方式完全一样。 - 记得把代码里的
random_field替换成你实际需要从SendData中获取的字段名称哦。
内容的提问来源于stack exchange,提问作者user16867954
相关产品推荐
相关产品推荐

