Blade for Laravel 5.2 中的动态表单元素名称


Dynamic form element names in Blade for Laravel 5.2

我正在尝试创建一个表单来更新表中的多行数据。 该表有四列(可乐,colb,colc,cold)。 我正在动态生成表单,在我的视图中使用 foreach 循环。 目前我正在使用

text('cola[][cola]', $this->cola...
然后

向下命名,然后填充表单字段。 这工作正常,除了它返回一个由四个数组(可乐、colb、colc、冷)组成的数组,这样我所有的 cola 值都在一个数组中,而我所有的 colb 值都在另一个数组中,等等。

想要的是返回提交的每行的数组,这样我的结果将是这样的

0(cola=3, colb=7, colc=2, cold=99)

这样我就可以简单地使用 for 每个循环访问这些值。 但是,我是HTML补救者,似乎无法在表单元素上正确命名以完成此操作。 我知道答案是显而易见的,但我不断遇到我不想要的数组或仅从最后一行提交数据。

编辑以澄清...

用途

text('row[$this->key][cola]'

text('row[$i][cola]'

使用 $i 作为迭代器,将生成一个名称为 $i 或 $this->key 的数组,该数组仅返回提交的最后一行。删除引号,如

text(row[$i][cola]

导致未定义的常量,因为字符串是必需的。

我最接近成功的是

text('row['<php echo $i ?>'][cola]'

这实际上正确命名了表单元素,但会破坏元素本身。 它们呈现为纯文本,而不是输入框。 我真的有点疯狂。

''用于字符串文字,您需要插值,"" .

$a = 'hi';
echo "$a there";
// hi there