Laravel old () директива с условным значением по умолчанию - PullRequest
1 голос
/ 16 января 2020

Я использую Laravel 5.8, и у меня есть несколько полей ввода, которые, конечно, имеют директиву old () для каждого тега value = "".

Это мой пример прямо сейчас:

<input class="form-control input-md" name="contact_name" type="text" value="@if($edit){{ $ad->contact_name }}@else{{ old('contact_name')}}@endif">

Я теперь, если я использую это: {{ old('contact_name', "John")}}

Значение по умолчанию будет "Джон"

Но я хочу сделать проверку, если есть пользователь вошел в систему и заполните этот ввод именем контакта пользователя.

Моя идея примерно такая:

value="@if($edit){{ $ad->contact_name }}@else{{ old('contact_name', Auth::user()->name)}}@endif

И это работает! Но, конечно, он выдает: Trying to get property 'name', когда я получаю окно инкогнито.

Итак, как я могу оценить зарегистрированных пользователей и предварительно заполнить это?

1 Ответ

3 голосов
/ 16 января 2020

Вы можете использовать дополнительный помощник:

{{ old('contact_name', optional(Auth::user())->name) }}
...