gpt4 book ai didi

php - 如何验证嵌套数组并在 laravel 中显示消息

转载 作者:行者123 更新时间:2023-12-05 07:42:47 24 4
gpt4 key购买 nike

我有这样的表单数据

enter image description here

我想要实现的是在每个question 中必须有一个answer with correct 字段。验证如下:

$this->validate($request, [
'questions.*.answers.*.correct' => 'required',
...
]);

但此验证要求所有answer 字段都必须标记为正确。

那么,我的第一个问题是如何验证这个数组以检查是否每个问题都有一个正确答案?
第二个是,如果验证失败,我如何显示哪个问题没有正确答案?在我的验证消息中是否有类似 :index 的通配符或其他东西?

最佳答案

我不知道您是如何创建表单的,但您可以制作以下可能对您有帮助的结构。

像这样让你的内部数组“回答”。

answers[
'value1' => Answer 1,
'value2' => Answer 2,
'value3' => Answer 3,
'value4' => Answer 4,
]

假设正确答案是 ans4 那么,构造这样的数组:

answers[
'value1' => Answer 1,
'value2' => Answer 2,
'value3' => Answer 3,
'value4' => Answer 4,
'correct' => 'value4'
]

现在您可以像这样定义验证:

'questions.*.answers.value1' => 'required',
'questions.*.answers.value2' => 'required',
'questions.*.answers.value3' => 'required',
'questions.*.answers.value4' => 'required',
'questions.*.answers.correct' => 'required',

现在您可以为上述值生成自定义错误消息。希望,这可能对您有所帮助。

关于php - 如何验证嵌套数组并在 laravel 中显示消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44219860/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com