我希望能够根据每条可用记录使用输入字段更新我的数据库。
我有这个代码会更新记录,但显然我必须更改它才能使用每条记录。
Vaccines::where('id', 2)->update($request->all());
如何获取每条记录的ID并根据ID更新每条记录?
答案 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>