我的输入名称如下:
<input name="settings[custom_plan.breakpoint1]"/>
如何检索old
输入?由于点表示法适用于输入数组,但不适用于实际名称。所以old('settings[custom_plan.breakpoint1]')
不起作用,old('settings.custom_plan\.breakpoint1')
也不起作用(逃避点在验证表示法中工作)。
如何检索输入的旧值?
谢谢!
答案 0 :(得分:1)
您可以使用old()
获取整个数组,然后使用&#34;手动&#34;提取值:
{{ old('settings')['custom_plan.breakpoint1'] }}
不幸的是,没有办法使用点符号。 old()
帮助器使用Illuminate\Support\Arr@get
方法,并且有一段关键代码:
foreach (explode('.', $key) as $segment) {
if (static::accessible($array) && static::exists($array, $segment)) {
$array = $array[$segment];
} else {
return value($default);
}
}
正如您所看到的,它首先做的是它通过点分割键,然后搜索嵌套的数组值。因此,无法将输入名称中的点解析为分隔符。