【发布时间】:2014-12-20 06:21:55
【问题描述】:
我有一个名为 Answer 的模型。
这个模型有两种可能的关系。 Question 或 Product。
但是,Answer 应该只有一个关系。问题或产品。
有一个表格可以创建答案。
此表单具有三个输入。其中两个是<select> 输入。另一种是文本输入,称为名称。
我希望我的验证只允许填写一个。
我目前的验证:
$validator = Validator::make(
Input::all(),
array('name' => array('required'))
);
$validator->sometimes('product', array('required', 'numeric'), function ($input) {
return !is_numeric($input->question);
});
$validator->sometimes('question', array('required', 'numeric'), function ($input) {
return !is_numeric($input->product);
});
要求至少填写一项,但也允许填写两项。
所以,我的问题是:如何更改我的验证以仅允许填写其中一项选择。 但必须始终填写其中一项。
选择 1:
<select name="question" class="form-control">
<option>None</option>
<option value="1" selected="selected">Question 1</option>
<option value="2">Question 2</option>
</select>
选择 2:
<select name="product" class="form-control">
<option>None</option>
<option value="2" selected="selected">Product 1</option>
<option value="3">Product 2</option>
</select>
【问题讨论】:
标签: php laravel laravel-4 laravel-validation