如何使用 laravel 验证来验证和显示至少一个下拉列表
How can validate and show atleast one dropdown required using laravel validation
我有一个表单,该表单有两个下拉菜单。如果我提交表单,我需要验证并至少显示一个下拉列表。我添加了一些功能但没有用。
create.blade.php
<select class="form-control" id="user" name="user">
<option value="0"> select user </option>
<option value="1"> jane </option>
<option value="2"> peter </option>
</select>
<select class="form-control" id="email" name="email">
<option value="0"> select email</option>
<option value="1"> jane@gmail.com </option>
<option value="2"> peter@gmail.com </option>
</select>
CreateRequest.php
public function rules()
{
$rules = [
'user' => 'required_without_all:email|not_in:0',
'email' => 'required_without_all:user|not_in:0',
];
return $rules;
}
使用 required_without
而不是 required_without_all
。前者接受字段列表,而您只需要一个。
此外,跳过对 select
占位符使用值“0”,然后将其从验证中删除。
例如:
<select class="form-control" id="user" name="user" placeholder="Select user">
<option value=""> select user </option>
<option value="1"> jane </option>
<option value="2"> peter </option>
</select>
和验证:
'user' => 'required_without:email',
使用 required_without
这将解决您的问题。
$rules = [
'user' => 'required_without:email|not_in:0',
'email' => 'required_without:user|not_in:0',
];
希望对您有所帮助!
我有一个表单,该表单有两个下拉菜单。如果我提交表单,我需要验证并至少显示一个下拉列表。我添加了一些功能但没有用。
create.blade.php
<select class="form-control" id="user" name="user">
<option value="0"> select user </option>
<option value="1"> jane </option>
<option value="2"> peter </option>
</select>
<select class="form-control" id="email" name="email">
<option value="0"> select email</option>
<option value="1"> jane@gmail.com </option>
<option value="2"> peter@gmail.com </option>
</select>
CreateRequest.php
public function rules()
{
$rules = [
'user' => 'required_without_all:email|not_in:0',
'email' => 'required_without_all:user|not_in:0',
];
return $rules;
}
使用 required_without
而不是 required_without_all
。前者接受字段列表,而您只需要一个。
此外,跳过对 select
占位符使用值“0”,然后将其从验证中删除。
例如:
<select class="form-control" id="user" name="user" placeholder="Select user">
<option value=""> select user </option>
<option value="1"> jane </option>
<option value="2"> peter </option>
</select>
和验证:
'user' => 'required_without:email',
使用 required_without
这将解决您的问题。
$rules = [
'user' => 'required_without:email|not_in:0',
'email' => 'required_without:user|not_in:0',
];
希望对您有所帮助!