Правильный способ написать динамически создаваемую форму 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 у меня все готово...

Другие вопросы по тегам