Почему, когда я возвращаю строковое значение из базы данных, он дает мне строку с 'http://localhost:8000' в нем? - PullRequest
0 голосов
/ 26 декабря 2018

Я сохраняю избранную фотографию в своем общедоступном / загружаемом файле / записи и сохраняю строку с именем фотографии в своей базе данных.И когда я хочу удалить это, я не могу это сделать.Затем я отслеживаю ошибку и просто понимаю, что когда я возвращаю значение моего поля фотографии в таблице, оно дает мне имя фотографии с http://localhost:8000 в нем

Это мой код:

$featured = $request->featured;
$featured_new_name = time() . $featured->getClientOriginalName();
$featured->move('uploads/post', $featured_new_name);
$post = Post::create([
    'post_title' => $request->post_title,
    'post_content' => $request->post_content,
    'featured' => 'uploads/post/' . $featured_new_name,
    'category_id' => $request->category_id,
    'post_slug' => str_slug($request->post_title)
]);

Затем, когда я пытаюсь вернуть его с помощью die ():

die($post->featured);

Это дает мне такой результат:

http://localhost:8000/uploads/post/1545856404foto.jpg

Когда я умру (), перед сохранением вбаза данных, она отлично работает:

die($featured_new_name);

Результат:

1545856533foto.jpg

Я возвращаю другое значение после сохранения в базе данных, и оно отлично работает:

die($post->post_title);

Результат:

asdsadadsada

Итак, прежде чем я сохраню в базе данных, имя фотографии работает нормально.Но после того, как я сохраню базу данных и верну ее, имя фотографии испортилось.Что база данных так работает?Или это ошибка?

Ответы [ 2 ]

0 голосов
/ 27 декабря 2018

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

  1. добавляет http://localhost:8000 к значению перед его сохранением
  2. добавляет http://localhost:8000 в переменную (через магию __get er) перед возвратом значения post_title

Это может быть то, что находится в самом вашем Post классе, или может происходить в слушателе событий .К сожалению, без дополнительной информации о вашей системе невозможно точно сказать, в чем проблема.

0 голосов
/ 27 декабря 2018

попытайтесь сохранить только название фотографии:

'featured' => $featured_new_name,

и вместо этого используйте полный адрес фотографии в атрибуте href вашего тега img.

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