Когда я создаю новое сообщение, изображение сообщения отображается правильно.Но когда я редактирую и обновляю сообщение, оно не отображается. После небольшого поиска элемента inspect я обнаружил, что изображение не получает полный путь -
<img src='http://127.0.0.1:8000/Updated_Image.jpg'
Но путь неотредактированного сообщения -
<img src='http://127.0.0.1:8000/uploads/posts/First_Image.jpg'
Это мой метод обновления в postController.php-
public function update(Request $request, $id)
{
$this->validate($request,[
'title'=>'required|max:255',
'content'=>'required',
'catagory_id'=>'required'
]);
$post = Post::find($id);
if($request->hasFile('featured'))
{
$featured = $request->featured;
$featured_new_name = time() . $featured->getClientOriginalName();
$featured->move('uploads/posts',$featured_new_name);
$post->featured = $featured_new_name;
}
$post->title = $request->title;
$post->content = $request->content;
$post->catagory_id = $request->catagory_id;
$post->save();
Session::flash('success','Post updated successfully!');
return redirect()->route('posts');
}
Функция сохранения:
public function store(Request $request)
{
$this->validate($request,[
'title'=>'required|max:255',
'featured'=>'required|image',
'content'=>'required',
'catagory_id'=>'required'
]);
$featured = $request->featured;
$featured_new_name = time().$featured->getClientOriginalName();
$featured->move('uploads/posts',$featured_new_name);
$post = Post::create([
'title' => $request->title,
'featured' => 'uploads/posts/' . $featured_new_name,
'catagory_id' => $request->catagory_id,
'content' => $request->content,
'slug'=> str_slug($request->title)
]);
Session::flash('success', 'A new post is created!');
return redirect()->back();
}
Размещать код файла блейда, откуда находятся оба файлаdisplay-
<td> <img src="{{ asset($post->featured) }}" alt="{{ $post->title }}" width="50px" height="50px"> </td>
Я также пытался просто {{$ post-> featured}}, но это не сработало.
Опубликовать изображение после обновления, поврежденное изображение