2016-09-16 2 views
2

У меня возникают проблемы с функцией загрузки файлов вместе с другими полями в угловом формате. Я попытался проверить свою функцию laravel, чтобы сохранить и загрузить файл с другими полями с POSTMAN, и это сработало.Угловая загрузка файлов JS и Laravel Backend

Однако при попытке его работать с угловой JS формой, он дает мне ошибку, как это:

enter image description here

Это моя угловому расслоению плотной код для получения всех входного от формы и передал его Laravel:

$scope.addAccount = function(obj) { 
     if ($scope.transformForm.$valid && $scope.netForm.$valid) { 
      $scope.uploadAccountProf(); 
     //$state.go("detailed"); 
      DataFactory.AddAccount($scope.obj).then(function successCallback(response) { 
       console.log("success"); 
       Materialize.toast('Account Saved!', 8000, 'greenbg rounded nobr'); 
       $state.go('detailed'); 
       }, function errorCallback(response) { 
       console.log("Error"); 
      }); 
     } 
     else{ 
      console.log("try again"); 
      Materialize.toast('Please fill out all required field.', 8000, 'redbg rounded nobr'); 
     } 

Приведенный ниже код является ответственным за файл загрузки штуковина:

$scope.uploadAccountProf = function(roastSlidesUpload){ 
     var fileAccount = angular.element(document.querySelector('#accountProfile')); 
     var fileCompliance = angular.element(document.querySelector('#fileUpload')); 
     //console.log(myRoastSlide[0].files[0]); 
     $scope.obj['accountProfile']=fileAccount[0].files[0]; 
     $scope.obj['fileUpload']=fileCompliance[0].files[0]; 
     console.log($scope.obj); 
     var formData = new FormData(); 
     formData.append('file', $scope.obj); 

     console.log("asd",formData); 
     return $scope.obj; 
    }; 

Моя форма:

<form id="transformForm" name="transformForm" class="addingTransformation" novalidate> 

Ниже моя форма для файла загрузки только, не включая другие текстовые поля:

<div class="row"> 
          <div class="file-field input-field col s12"> 
           <div class="btn"> 
            <span>File</span> 
            <input id="accountProfile" type="file"> 
           </div> 
          <div class="file-path-wrapper"> 
           <input id="acctProfile" class="file-path validate" placeholder="Accout Profile" type="text"> 
          </div> 
          </div> 
         </div> 

Моя кнопка:

<button class="btn waves-effect waves-light right submit allmargin" type="submit" name="action" ng-click="verifiedaccount()">Submit 
      <i class="material-icons right">send</i> 
     </button> 

Может кто-нибудь мне помочь? Я пытался решить это в течение нескольких недель и до сих пор не могу понять, что случилось, и почему угловой возвращает мне эту ошибку. :(

+0

Не могли бы вы отправить код функции DataFactory.AddAccount? и какая часть кода находится в строке 369? – boroboris

+0

@Dhenn: Вы когда-нибудь находили решение для этого? У меня такое же сходство настроен как вы. Я столкнулся с той же проблемой. – ihue

ответ

1

У меня очень мало опыта работы с Угловое, так что я не знаю, правильно ли это, но загрузить файл через HTML-форму, обычно нужно установить это ENCTYPE.

Вы можете добавить enctype="multipart/form-data" на ваш <form> и повторите попытку?

+0

Пробовал это уже, но он все еще не работает. Получение той же ошибки – Dhenn

+0

Тогда у меня не было бы cl у.е .. – Loek

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