2016-10-01 79 views
0

我開始用導軌研究角度。這是我的問題,當我做了一個$ http.get()請求它返回和錯誤,我認爲rails不想接受數據。這是我的代碼:rails 5 - 從角度發送數據時ActionController :: UnknownFormat

查看:

<div class="row"> 
     <div class="col-md-12"> 
      <div class="form-group"> 
      <label for="signup_user_name">User name: </label> 
      <input type="text" name="instructor[user_name]" id="signup_user_name" class="form-control" required="true" ng-model="instructor.username"/> 
      <button type="button" class="form-control btn btn-default" ng-click="validate()">validate username</button> 
      </div> 
     </div> 
     </div> 

控制器:

signup.controller('signupController', function($scope, $http){ 

    $scope.validate = function() { 

    var username = $scope.instructor.username 

    var sent_data = { "username" : username }; 

    $http.get('/home/signup', sent_data).success(
     function(data, status, headers, config) { 
     // write code later 
     }).error(
     function(data, status, headers, config) { 
     // write code later 
     }); 
    } 
}); 

軌方法:

def signup 
    params[:username] // trying to print the paramater sent by angular via $http.get() 
end 

這是結果:

Link to image result 請幫助我...謝謝! :)

回答

0

這是不是你從角

GET請求通過您的PARAMS到軌道的方式這裏是你應該如何通過你的數據

$http.get('/home/signup', { 
    params: { 
    username: 'yourusername' 
    } 
}); 

另一件事一個例子,你應該呈現東西在你的軌道API,因爲你正在使用的角度爲您forntend框架,那麼也許你應該渲染JSON或文件

嘗試使用此行的軌道API

render json: params[:username] 

檢查數據發送到你的rails api,你可以檢查你的控制檯,使用puts或byebug

相關問題