Вывод данных json из базы данных Laravel в отдельные поля ввода - PullRequest
0 голосов
/ 28 апреля 2018

Поэтому у меня есть несколько входов, сохраняемых в один столбец в формате json, в базу данных, и при получении я превращаю этот json в массив для вывода правильных данных.

<input type="text" name="waypoints" class="form-control" autocomplete="on" value="{{ json_decode($myroute->waypoints, true)[0] }}">

Приведенный выше код является первым элементом в массиве, отображаемом на входе, поэтому, если я буду перечислять

{{ json_decode($myroute->waypoints, true)[0] }}
{{ json_decode($myroute->waypoints, true)[1] }}
{{ json_decode($myroute->waypoints, true)[2] }}

Будет правильно выводить массив. Но как мне узнать, сколько в массиве, и показать только правильное количество полей ввода? (максимум 10)

Я попытался использовать @foreach ($myroutes as $myroute) и @endforeach вокруг поля ввода, но получил сообщение об ошибке.

Заранее спасибо!

1 Ответ

0 голосов
/ 28 апреля 2018

вы можете сделать что-то вроде этого:

@foreach(json_decode($myroute->waypoints, true) as $v)

  <input type="text" name="waypoints[]" class="form-control" autocomplete="on" value="{{ $v }}">

@endforeach

Однако было бы проще, если бы вы могли ответить массивом, а не ответом json.

вроде так:

return view('edit')->with('myroutes', json_decode($myroute->waypoints, true));

и по вашему мнению:

@foreach ($myroutes as $v) 

    <input type="text" name="waypoints[]" class="form-control" autocomplete="on" value="{{ $v }}">

@endforeach
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...