Почему игнорируется "/" при указании пути к файлу в Laravel 8?
Просто хочу вставить картинку в авторизации Laravel и подставляю такой путь в img:
<img src="{{ asset('storage/images/') . Auth::user()->avatar }}"
Но в итоге последний "/" игнорируется и получается это:
Файл естественно не отображается по такому пути.
В то же время если я пишу так:
<img src="{{ asset('storage/images/') . '/' . Auth::user()->avatar }}"
После обновления "/" появляется там где нужно и изображение появляется:
В примере в видео, по которому пишу код у автора все работает как в первом варианте и ему не приходится дополнительно конкатенировать ещё один слэш.
Почему у меня так происходит?
UPD/
На 2-м изображении стрелку не на тот слэш поставил
Имеется в виду последний слэш - между images и auto.jpg
Ответы (1 шт):
Возможно потому что хелпер asset() генерирует путь к файлу естественно что в конце пути к файлу не может быть слеша, Вы же пытаетесь при помощи этого хелпера указать путь к директории, что наверное не есть правильным. Вы можете прописывать путь к аватару таким образом:
{{ asset('storage/images/' . Auth::user()->avatar) }}
UPD: Также если посмотреть в код самого хелпера, и проследовать к классу UrlGenerator.php можем увидеть что слеш убирается при помощи trim():
return $this->removeIndex($root).'/'.trim($path, '/');

