【问题标题】:Laravel form validation if or rulesLaravel 表单验证 if 或规则
【发布时间】:2016-07-03 17:04:46
【问题描述】:

我有一个包含 4 个文本字段的表单。我希望 Laravel 检查字段是否为字段,但不需要检查所有字段,只需检查其中两个。

示例:字段 1、字段 2、字段 3、字段 4。要填写表格,用户必须为 field1 和 field2 或 field3 和 field4 输入值。

这可能吗?

【问题讨论】:

  • 您可以使用自定义验证规则,这允许您为字段验证提供复杂的功能,而不是简单的规则。你可以在这里找到一些信息:laravel.com/docs/5.1/validation#custom-validation-rules
  • 是的,我知道使用自定义验证规则的能力,但我想知道默认规则是否可以帮助我?
  • 你可以使用 required_with:foo,bar,...
  • 我认为标准规则不可能做到这一点,除非你用额外的规则扩展验证器,比如这个例子:gist.github.com/juice49/4176954
  • @Jitendra 感谢 required_with 规则,我想知道我怎么从来没有注意到这个! OP:您还可以查看这个示例,该示例似乎解决了类似的问题stackoverflow.com/questions/23401365/…。您可以要求填写 field_1 或 field_3,然后使用“required_with”和“required_without_all”的组合将 field_2 设置为 field_1,将 field_4 设置为 field_3。我希望这会有所帮助!

标签: php validation laravel laravel-5.2


【解决方案1】:

如果将来有人需要,我会发布答案。我有一个字段(价格),它始终是必需的。比我有三个额外的字段,其中还需要组合字段(数量)或字段(买入、卖出)。

解决办法如下:

return [
    'price' => ['required'],
    'volume' => ['required_without_all:buy,sell'],
    'buy' => ['required_without:volume'],
    'sell' => ['required_without:volume'],
];

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-04-23
    • 2016-08-17
    • 1970-01-01
    • 1970-01-01
    • 2016-12-17
    • 2020-06-25
    • 2020-06-09
    相关资源
    最近更新 更多