Laravel版本:5.7
我想设置验证。 选中复选框后,设置"介于"规则。就像下面一样。
required|integer|between:1,2
但是当未选中复选框时,规则之间不需要如下所示的规则
required|integer
我尝试使用验证,但我不知道如何设置。
输入
<input type="checkbox" name="checkbox">
<input type="number" name="number">
我不知道
您是否正在使用表单请求,所以这里有一个使用表单请求进行验证的解决方案
<?php
namespace AppHttpRequests;
use IlluminateFoundationHttpFormRequest;
class DepartmentRequest extends FormRequest
{
/**
* Determine if the user is authorized to make this request.
*
* @return bool
*/
public function authorize()
{
return true;
}
public function rules()
{
rules = [];
if ($this->attributes->has('checkbox')) {
$rules['key'] = 'required|integer|between:1,2',
} else {
$rules['key'] = 'required|integer',
}
// Your other validation rules here
return $rules;
}
public function messages()
{
return [
// Your custom validation messages here
];
}
}
请记住:您必须使用要验证的字段名称更改密钥。
希望对您有所帮助。