Правильный способ написать динамически создаваемую форму PHP с вводом из массива в 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() и массив, но продолжаю получать небольшие вариации одной и той же ошибки.
1 ответ
Я не знаю, правильно ли это закрыть мой вопрос, но с ответом @krisgjika у меня все готово...