我只想用一种形式保存多个序列号。举例来说,这意味着您有4个输入字段,您可以在其中扫描这些序列号,其中1个字段是必填字段,其他字段不必填写,如下所示:
public function store(Request $request)
{
$this->middleware('guest');
request()->validate([
'serialnumber' => 'required',
'serialnumber',
'member_id' => 'required'
]);
Ausleih::create($request->all());
return redirect()->route('borrow.index');
}
接下来是输入来自的视图:
<div class="card-body">
<form method="POST" action="{{ route('borrow.store') }}">
@csrf
<div class="form-group row">
<label for="serialnumber" class="col-md-4 col-form-label text-md-right">{{ __('Scan serialnumber') }}</label>
<div class="col-md-6">
<input id="serialnumber" type="text" class="form-control{{ $errors->has('serialnumber') ? ' is-invalid' : '' }}" name="serialnumber" value="{{ old('serialnumber') }}" required autofocus>
<br>
<input id="serialnumber" type="text" class="form-control{{ $errors->has('serialnumber') ? ' is-invalid' : '' }}" name="serialnumber" value="{{ old('serialnumber') }}" autofocus>
@if ($errors->has('serialnumber'))
<span class="invalid-feedback">
<strong>{{ $errors->first('serialnumber') }}</strong>
</span>
@endif
</div>
</div>
<div class="form-group row">
<label for="member_id" class="col-md-4 col-form-label text-md-right">{{ __('Scan your member card') }}</label>
<div class="col-md-6">
<input id="member_id" type="password" class="form-control" name="member_id" required>
@if ($errors->has('member_id'))
<span class="invalid-feedback">
<strong>{{ $errors->first('member_id') }}</strong>
</span>
@endif
</div>
</div>
<div class="form-group row mb-0">
<div class="col-md-6 offset-md-4">
<button type="submit" class="btn btn-primary">
{{ __('send') }}
</button>
</div>
</div>
</form>
</div>
如您所见,我刚刚做了另一个输入字段,以保存多个序列号。问题是我只是得到一个价值,不是两个人都能帮助我吗?我必须更改什么?
答案 0 :(得分:0)
首先,id
属性在同一文档中必须是唯一的,因此请删除重复的属性或将其替换为通用类。
您需要将名称用作name='serialnumber[]'
之类的数组,然后在store
动作中像这样遍历它们:
foreach($request->serialnumber as $serialnumber){
//Use every $serialnumber as you want here
}
您的验证可能类似于:
$request->validate([
'serialnumber' => 'required|array|min:1',
'member_id' => 'required'
});
因此序列名称应该是一个至少包含一项的数组。