Laravel сохраняет временный файл как изображение - PullRequest
0 голосов
/ 23 мая 2018

У меня есть 3 поля изображения для моих продуктов, метод сохранения все работает нормально, но в методе обновления first image сохраняет временный файл в базе данных, а два других обновления без проблем.

Код

Здесь я делюсь всеми своими 3 изображениями по методу обновления:

//saves temp file instead of file name
if ($request->hasFile('imageOne')) {
            $imageOne = $request->file('imageOne');
            $filename = 'productone' . '-' . time() . '.' . $imageOne->getClientOriginalExtension();
            $location = storage_path('app/public/images/' . $filename);
            Image::make($imageOne)->resize(1200, 600)->save($location);

            if(!empty($product->imageOne)){
                Storage::delete('images/' . $product->imageOne);
            }
            $product->imageOne = $imageOne;            
        }
//works with no issue
        if ($request->hasFile('imageTwo')) {
            $imageTwo = $request->file('imageTwo');
            $filename = 'producttwo' . '-' . time() . '.' . $imageTwo->getClientOriginalExtension();
            $location = storage_path('app/public/images/' . $filename);
            Image::make($imageTwo)->resize(1200, 600)->save($location);

            if(!empty($product->imageTwo)){
                Storage::delete('images/' . $product->imageTwo);
            }
            $product->imageTwo = $filename;            
        }
//works with no issue
        if ($request->hasFile('imageThree')) {
            $imageThree = $request->file('imageThree');
            $filename = 'productthree' . '-' . time() . '.' . $imageThree->getClientOriginalExtension();
            $location = storage_path('app/public/images/' . $filename);
            Image::make($imageThree)->resize(1200, 600)->save($location);

            if(!empty($product->imageThree)){
                Storage::delete('images/' . $product->imageThree);
            }
            $product->imageThree = $filename;            
        }

Есть идеи?

1 Ответ

0 голосов
/ 23 мая 2018

Проблема здесь: -

$product->imageOne = $imageOne; 

Вы экономите $ imageOne.Но вам нужно сохранить $ имя файла.Используйте следующий код: -

$product->imageOne = $filename;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...