我想问问是否有人知道如何验证3个字段,但您只能填写一个,而不能填写其他2个。
示例:
<input name="field1" type="numeric">
<input name="field2" type="numeric">
<input name="field3" type="numeric">
field1,field2,field2可以填充,但是如果我填充field1,field2和field3通过,但是如果我填充field1和field2,则触发验证,并且只能填充其中之一。
谢谢
答案 0 :(得分:0)
尝试一下:
控制器
public function store() {
User::create(request()->validate([
'first_name' => 'required|min:3',
'middle_name' => 'nullable',
'last_name' => 'nullable',
]))
}
编辑
public function store(Request $request) {
Validator::make($request()->all, [
'number_1' => Rule::requiredIf(!$request->number_2 && !$request->number_3);
'number_2' => Rule::requiredIf(!$request->number_1 && !$request->number_3);
'number_3' => Rule::requiredIf(!$request->number_1 && !$request->number_2);
])
}
答案 1 :(得分:0)
将必须填写的字段设置为# ...
# [REDACTED]
# [REDACTED]
# ...
。对于其他人,只需放置验证规则,不要放置required
规则。
required
答案 2 :(得分:0)
sometimes
将验证其是否通过
'field1' => 'sometimes|required|max:255',
'field2' => 'sometimes|required|max:255',
'field3' => 'sometimes|required|max:255',