Laravel 5.6 - Форма не переполняется предыдущими значениями после проверки - PullRequest
0 голосов
/ 01 июля 2018

У меня есть простая форма в Laravel 5.6, на которой я запускаю проверку, моя форма выглядит следующим образом ..

   @if ($errors->any())
        <div class="alert alert-danger">
            <ul>
                @foreach ($errors->all() as $error)
                    <li>{{ $error }}</li>
                @endforeach
            </ul>
        </div>
    @endif

<form action="{{route('posts.store')}}" method="POST">
   <input name="title" type="text">#
    <button type="submit" class="btn btn-success">Submit</button>
</form>

А мой контроллер вот так ..

public function store(Request $request)
    {

        $this->validate($request, [
            'title' => 'required',
        ]);

        $post = new Post;
        $title = $request->input('title');
        $post->save();
    }

Это работает, но когда проверка завершается неудачно и отображается сообщение об ошибке, она не заполняет форму предыдущими значениями. Чтение документов на https://laravel.com/docs/5.2/requests#old-input говорит о том, что мне не нужно ничего делать, и это будет автоматически.

Кто-нибудь есть идеи, где я иду не так?

Ответы [ 2 ]

0 голосов
/ 01 июля 2018

Если вы хотите сохранить предыдущий ввод, вам нужно использовать вспомогательную функцию old , как показано в документации по вашей ссылке, если вы прокрутите вниз до «Извлечь старый ввод».

Вам необходимо изменить input на следующее:

<input name="title" type="text" value="{{ old('title') }}">

Где title соответствует значению, которое вы указали в атрибуте name вашего ввода.

0 голосов
/ 01 июля 2018

Вы не отражаете значение в вашем представлении. Я на 99% уверен, что следующие проверки isset().

<input name="title" type="text" value="{{$name}}">#

Просто убедитесь, что $request->name передается от вашего контроллера к вашему представлению, хотя это может быть просто "автоматизированная" часть, о которой вы говорили ... Мне придется проверить документы.

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