获取id并更新数据库

时间:2018-01-19 23:17:05

标签: php mysql laravel

我希望能够根据每条可用记录使用输入字段更新我的数据库。

我有这个代码会更新记录,但显然我必须更改它才能使用每条记录。

Vaccines::where('id', 2)->update($request->all());

如何获取每条记录的ID并根据ID更新每条记录?

1 个答案:

答案 0 :(得分:0)

您可以执行以下操作:

Vaccines::all()->each->update($request->all());

在这种情况下,您不需要记录ID。 Eloquent将获取模型的所有记录并返回一个集合。

编辑:

您需要将每个模型属性作为数组发布。通过模型主键索引并分配相应的值。

 // using a list of User records as an example
 <form>
    @foreach ($users as $user)
      <input name="first_name[{{ $user->id }}]" value="{{ $user->first_name }}" />
      <input name="last_name[{{ $user->id }}]" value="{{ $user->last_name }}" />
     @endforeach
 </form>

 // submit the form...


 // in your `update` controller method
 foreach(request()->input('first_name') as $id => $value) {
     if ($user = User::find($id)) {
         $user->update(['first_name' => $value]);
     } else {
         logger(sprintf('Unable to find model id %d.', $id));
     }
 }

这可以让你了解如何处理它?<​​/ p>