【问题标题】:Laravel 5 validation rulesLaravel 5 验证规则
【发布时间】:2015-09-17 22:19:34
【问题描述】:

以前我在请求类中使用过验证,例如

public function rules()
{
    return [
        'userName' => 'required', 'min:3',
        'userEmail' => 'required|email',
        'departmentId' => 'required',
        'slug' => 'required',
    ];
}

但我现在有另一个表格,但我在文档中看不到任何可能对我有帮助的选项。

基本上,假设我有一个与上述验证具有相同字段的表单。唯一一次验证失败的情况是 ALL 字段绝对不包含任何数据。因此,如果我在 slug 输入中添加“hi”之类的内容并提交,它应该会通过验证。

这样的事情可能吗?

谢谢

【问题讨论】:

  • 首先我会删除所有“必需”规则,然后在您的表单中添加一个隐藏字段,并为该字段创建一个自定义验证器。

标签: laravel-5


【解决方案1】:

您或许可以使用required_without_all 验证规则。

http://laravel.com/docs/5.1/validation#rule-required-without-all

验证中的字段必须仅当所有其他字段都存在 指定的字段不存在。

它会给你类似的东西

public function rules()
{
    return [
        'userName' => 'required_without_all:userEmal,departmentId,slug','min:3',
        'userEmail' => 'required_without_all:userName,departmentId,slug|email'
         ...
    ];
}

但是如果你有很多字段,它就不是很方便。 如果您必须处理许多字段,创建自定义验证器可能是更好的解决方案。

http://laravel.com/docs/5.1/validation#custom-validation-rules

【讨论】:

    猜你喜欢
    • 2016-04-30
    • 1970-01-01
    • 1970-01-01
    • 2018-04-18
    • 1970-01-01
    • 2015-01-26
    • 1970-01-01
    • 2016-12-17
    • 2020-06-25
    相关资源
    最近更新 更多