2015-09-10 5 views
0

Я попытался загрузить файл изображения в подпапку, но я не получил помощь из Интернета. На веб-сайте Laravel они упомянули о создании папки, но не объяснили о подпапках. Моя цель - загрузить изображение в подпапку. Например: userdata/1/1.jpg.Laravel 5 storage

Я пробовал код, который приведен ниже.

public function store(ProfileimageRequest $request, $id) 
    { 
     User::findOrFail($id); 
     $file  = $request->file('file'); 
     Storage::makeDirectory($id); //result is 1 
     $extension = $file->getClientOriginalExtension(); 
     Storage::disk('local')->put($id.'.'.$extension, File::get($file)); //result is 1.jpg 
    } 

В результате вышеуказанного кода создается папка «1» и изображение «1.jpg», но изображение не создается внутри папки.

+0

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

ответ

1

Возможно, вам необходимо указать, что вы хотите загрузить файл в папку. В методе put() добавьте имя папки с именем файла.

public function store(ProfileimageRequest $request, $id) 
    { 
     User::findOrFail($id); 
     $file  = $request->file('file'); 
     Storage::makeDirectory($id); //result is 1 
     $extension = $file->getClientOriginalExtension(); 
     Storage::disk('local')->put($id.'/'.$id.'.'.$extension, File::get($file)); 
    } 

Сообщите мне, если это сработает для вас.

+0

Спасибо, я понял. –