提问人:Wikke 提问时间:7/13/2023 最后编辑:Abdulla NilamWikke 更新时间:7/13/2023 访问量:39
使用Laravel中数组的输入编写动态构建的PHP表单的正确方法
Proper way to write a dynamically built PHP form with input from array in Laravel
问:
所以我对 Laravel 很陌生,还没有到我有精神带宽来惹 Vue 的地步。 同时,我还在尝试动态构建表单,以使代码更容易看。
我的代码如下所示:
<form action='{{ route('agents.store') }}' method='POST'>
@csrf
@php
$details = ['prop' => 'labelName', ...];
@endphp
@foreach ($details as $data => $label)
<div class="{{ $data }}">
<label for="{{ $data }}">
{{ $label }}:
</label>
<input type="text" name="{{ $data }}" id="{{ $data }}" value="{{ old('{{$data}}') }}">
@error('{{ $data }}')
{{ $message }}
@enderror
</div>
@endforeach
现在,这似乎工作正常。但是,当我保存它并且 VSC 的格式选项拒绝时,我确实会收到错误。
我认为这是因为value="{{ old('{{$data}}') }}"
基本上是动态插入变量的加倍努力。
有没有一种合适的方法可以在此期间(在学习可能 Vuejs 之前)构建我的表单?这个表单需要 15 个输入,它变得非常混乱。
提前亲切的问候。
我尝试过旧的,值得信赖的SO和Google。除其他外,我找到了这篇可靠的帖子,但尝试不同的撇号和勾号只会导致错误消息的变化
解析错误:语法错误,在第 1 行> 1 上期望“)” | |^
old('') 需要撇号,所以我在 old() 和数组中添加了额外的不同类型的类型,但我不断得到对同一错误的细微变化。
答:
0赞
Wikke
7/13/2023
#1
我不知道这是否是结束我问题的正确方法,但有了@krisgjika的回答,我就准备好了......
评论
0赞
Nijeesh Joshy
7/16/2023
这不应该是一个答案
评论
value="{{ old('{{$data}}') }}"
为什么是双倍?你已经在第一个 .尝试{{}}
{{}}
value="{{ old($data) }}"