0

我有包含数组的html-form 。它有这样的结构:

"q" => array:1 [▼
  "new" => array:1 [▼
    1 => array:2 [▼
      "name" => "a"
      "v" => array:2 [▼
        1 => array:1 [▼
          "text" => "b"
        ]
        2 => array:1 [▼
          "text" => "c"
        ]
      ]
    ]
  ]
]

我已经创建了表单请求。现在它有一个规则:

'q.new.*.v.*.text' => 'required|min:2|max:128'

你知道吗?有时它会起作用。当q.new.*.v数组包含少于 4 个元素时,一切都验证得很好(我可以看到错误消息)。但是,当我发送例如这样的表格时,数据不会闪存到存储中,我无法使用old()函数检索它。图像。一些调试信息:

[2020-02-06 22:37:51] local.INFO: Request all in form request: Array
(
    [q] => Array
        (
            [new] => Array
                (
                    [1] => Array
                        (
                            [name] => a
                            [v] => Array
                                (
                                    [1] => Array
                                        (
                                            [text] => b
                                        )

                                    [2] => Array
                                        (
                                            [text] => c
                                        )

                                    [3] => Array
                                        (
                                            [text] => d
                                        )

                                    [4] => Array
                                        (
                                            [text] => e
                                        )

                                )

                        )

                )

        )

)
[2020-02-06 22:37:51] local.INFO: Old() in form request: Array
(
)
[2020-02-06 22:37:51] local.INFO: Old in controller after redirect: Array
(
)
[2020-02-06 22:37:51] local.INFO: Request all in controller after redirect: Array
(
)

我试图转换q.new.*.v.*.text成 , , 的数组,q.new.1.v.1.text但这并没有带来太多的结果。q.new.1.v.2.textq.new.1.v.3.text

4

1 回答 1

0

问题在于存储会话的默认位置。默认情况下,SESSION_DRIVER 是 cookie(它们的大小是有限的)。因此,我已将驱动程序更改为file并以正确的方式工作。

于 2020-04-20T15:56:54.807 回答