【问题标题】:Problem with 'exists' validation in Laravel when the input is an array当输入是数组时,Laravel 中的“存在”验证问题
【发布时间】:2020-04-15 12:03:38
【问题描述】:

这里的文件/vendor/laravel/framework/src/Illuminate/Validation/Concerns/ValidatesAttributes.php和方法validateExists返回错误

数组到字符串的转换

当用户输入如下:

array:2 [
    0 => array:1 [
        'key' => 'value'
    ]
    1 => array:1 [
        'key' => 'value'
    ]
]

此数组进入此文件第 655 行的变量 $value

那里是真正的 laravel 错误吗?

编辑

我的验证:

'cars.*.brand' => [
    'exists:my_table,id',
]

【问题讨论】:

  • 你应该展示你的验证是什么样子的。
  • 显示你的 dd($request->all());当你有错误时
  • 问题中的多维数组是$value的输出。我把它放在 try catch 中,然后在 catch 部分打印出这个数组。

标签: laravel validation exists


【解决方案1】:

没有太多信息可以给你答案,但是你试过了吗:

'cars.*.brand' => 'exists:my_table,id'

【讨论】:

  • 我不明白你的验证和我的验证有什么区别!
  • 在您的示例中,您在数组中提供验证规则“exists:my_table,id”,而我将其作为字符串提供。你得到的错误是“数组到字符串的转换”因此这可能是修复。
猜你喜欢
  • 2017-10-30
  • 2017-11-13
  • 2014-09-20
  • 2021-12-07
  • 2021-03-06
  • 2014-06-07
  • 2022-01-04
  • 2019-02-08
相关资源
最近更新 更多