【问题标题】:best way for bulk insertion validation laravel 5批量插入验证 laravel 5 的最佳方法
【发布时间】:2016-05-19 01:47:17
【问题描述】:

我在 laravel 5 中验证批量插入时遇到问题,我的情况如下:

一个名为部门的模型,当我保存一个部门时它可能有几个员工属于它,我目前正在循环整个员工列表并在插入之前验证每个员工在 laravel 5 验证器中有一种方法吗?这是开箱即用的。

【问题讨论】:

  • 您需要验证每个员工吗?
  • 是的,我知道,但你到底在想什么?它可能对我有用
  • 如果您需要验证每个员工,您只能通过以某种方式遍历所有员工来做到这一点。我不知道这会消除那个循环
  • 我不想消除循环,我可能没有正确表达这个问题,因为我的意思是如果在 laravel 验证器中我不需要自己做循环就可以做到这一点.现在我使用验证器逐条验证一条记录,但如果有办法将员工列表传递给进行验证的函数,那就太好了

标签: validation laravel laravel-5 bulkinsert bulk


【解决方案1】:

在 Laravel 5.2 中,有一种简单的方法可以解决这类问题。

在 Laravel 5.2 中验证数组表单输入字段要容易得多。例如,要验证给定数组输入字段中的每封电子邮件是否唯一,您可以执行以下操作:

$validator = Validator::make($request->all(), [
    'person.*.email' => 'email|unique:users'
]);

同样,您可以在语言文件中指定验证消息时使用 * 字符,从而轻松为基于数组的字段使用单个验证消息:

'custom' => [
    'person.*.email' => [
        'unique' => 'Each person must have a unique e-mail address',
    ]
],

文档中清楚地解释了此信息。

来源:laravel.com

【讨论】:

    【解决方案2】:

    据我所知,在 Laravel 中没有开箱即用的方法。我的意思是,没有可以调用的方法或可以使用的类来实现您的目标。

    您可以创建一个。将验证抽象到它自己的类中并使用它。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2023-04-06
      • 2019-01-30
      • 2019-08-06
      • 2018-07-22
      • 1970-01-01
      • 2015-05-05
      • 1970-01-01
      相关资源
      最近更新 更多