2015-10-13 2 views
0

Я пытаюсь создать загрузку рабочего изображения в форме с использованием Laravel 5 и Intervention.Laravel 5 - Сохранение изображений вмешательства

public function store() 
    { 
    $input = Request::all(); 
    Project::create($input); 

    if (Input::hasFile('image')) 
    { 
     $file = Input::file('image'); 
     $file->move('uploads', $file->getClientOriginalName()); 

     $image = Image::make(sprintf('uploads/%s', $file->getClientOriginalName()))->resize(120, 120)->save(); 
    } 

    return $file; 

    // return redirect('projects'); 
} 

Это копирование изображения в указанной папке, но когда я вернусь $ файл, он дает мне что-то в линиях

/TMP/phpoMwrrD

Вместо имени файла , Я просматривал документацию о вмешательстве, но не могу найти, что я делаю неправильно.

Цитирование документации;

Обработка загрузки изображений в Laravel

В приложении Laravel это также можно передать загруженный файл непосредственно к методу макияжем.

Создание изображения из загруженного файла в Laravel

// изменение размера загружаемого файла Image :: сделать (Input :: файл ('фото')) -> размер (300, 200) -> Save (» foo.jpg ');

Заранее спасибо.

+0

Где вы возвращаете '$ file'? Почему вы не работаете с «$ image»? –

+0

@GladToHelp Обновлен OP со всей функцией. Я мог бы работать с $ image, но в процессе написания функция начала использовать $ file и не менялась. Однако он не должен изменять результат функции. –

+1

Контроллер пытается преобразовать объект '$ file' в строку, поэтому вы видите временное имя/путь. Вы должны взять имя файла из '$ file-> getClientOriginalName()' –

ответ

0

Исправлена ​​ошибка с помощью @GladToHelp. Подержанные

`$imageN = $file->getClientOriginalName();` 

Чтобы получить имя файла.

Смежные вопросы