Загрузить изображение с помощью laravel с Form ::model

#php #laravel-4 #image-upload

#php #laravel-4 #изображение-загрузить

Вопрос:

Я делаю это в своем блейде:

 {{ Form::model($user, array('files' => true , 'class' => 'form-horizontal')) }}
    <div class="form-group">
        {{ Form::label('profile_pic','Profile Picture',array('class'=>'control-label col-xs-2')) }}
        <div class="col-xs-10">
            <img src="img_upload/{{ $user->profile_pic }}" alt="Image not find( {{ $user->profile_pic }} )"style="width:100px;height:100px;"/>
            {{ Form::file('profile_pic') }}
        </div>
    </div>
{{ Form::close() }}
  

И я получаю этот файл с помощью

 $files = Input::file('profile_pic');
return Response::json([
        'success'=> false, 
        'errors'=>[$files]]);
  

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

{«успех»:false,»ошибки»:[null]}

Если я хочу попробовать получить исходное имя следующим образом:

 $filename = $files->getClientOriginalName(); 
  

Я получаю сообщение об ошибке:

 message: "Call to a member function getClientOriginalName() on a non-object"
type: "SymfonyComponentDebugExceptionFatalErrorException"
  

Я сделал что-то не так? Разве это невозможно использовать Form::file в Form::model ?

Я искал подобные проблемы, но не могу найти решение, многие люди используют Form::open

Комментарии:

1. что Input::has('file') возвращается при публикации формы?

2. Если $files вернется null , вы получите сообщение об ошибке для getClientOriginalName() функции. Вы можете использовать Form:file в Form::model . Кстати, я не вижу route в вашей форме.

3. Джимусу это возвращает «false»; Хей: Мой маршрут правильный, докажите, что laravel запущен в моем контроллере, и верните json с моего контроллера, я должен был сделать так: Route::post(‘editnewuseradmin’, ‘UserAdminController @saveUser’);