Попытка получить доступ к изображению через строку на Laravel - PullRequest
0 голосов
/ 26 февраля 2020

Я пытаюсь получить изображение из базы данных в Laravel, но я не могу сделать это, используя строковое значение.

мой метод хранения в контроллере

  public function store(CreatePostsRequest $request)
    {

      $image= $request->image->store('posts');

        Post::create([
          'title'=>$request->title,
           'description'=>$request->description,
           'content'=> $request->content,
          'image'=>$request->image

        ]);

        session()->flash('success','Post Created Successfully.');

      return redirect(route('posts.index'));

        }

в моем .env файл, который я обновил

FILESYSTEM_DRIVER=public

Я уже попробовал

php artisan storage:link

Я легко вижу хэшированное значение изображения в приложении / хранилище / сообщениях, но я пытаюсь сделать это чтобы сохранить хешированное значение изображения в базе данных, но вместо этого C: \ Users \ zaeem \ AppData \ Local \ Temp \ php216B.tmp значение сохраняется в базе данных. Любая идея, как я могу сохранить хэшированное значение, такое как значение в изображении u can see the hashed value

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

 @foreach ($posts as $post)
    <tr>
    <td> <img src="{{$post->image}}" width="60px" height="60px" alt=""> </td> 
    <td>
        {{$post->title}}
    </td>
    </tr>  

    @endforeach

1 Ответ

0 голосов
/ 26 февраля 2020

для получения изображения и перемещения его в папку publi c и сохранения пути к изображению в базе данных выполните следующие действия:

$image = $request->file('image');
$imageName = rand(1000000, 9990999) . '.' . $image->getClientOriginalExtension();
$path = '/upload/images/'   //this is for example
$image->move(public_path() . $path .  $imageName);
Post::create([
    'title'=>$request->title,
    'description'=>$request->description,
    'content'=> $request->content,
    'image'=> $path . $imageName
]);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...