Restangular POST form data in json format in Angular JS

Kiran Kumar picture Kiran Kumar · Sep 3, 2013 · Viewed 29.7k times · Source

I am new to Angular JS and I am in a need to use restangular POST of form data in json format. Also I am new to the POST functionalities, can anyone tell me how I can do it??

MY Index Page:

<form ng-controller="registerCtrl">
 <input placeholder="Username" type="email" name="username"  ng-model="user.email" />
 <input placeholder="Password" type="password" name="password" ng-model="user.password"/>
 <input placeholder="Confirm Password" type="password" name="confirmpassword"  ng-model="user.confirmPassword" />
 <button class="btn btn-info" ng-click="registerUser()" type="submit">Login</button>
</form>

Controller

var myApp=angular.module('myApp',['restangular']);
function registerCtrl($scope, Restangular){
$scope.user = {};
$scope.registerUser=function(){
        $scope.people = Restangular.all('data.json/:user').post($scope.user);
    }
}

Here where should I pass the input values as the Json format..... If am wrong with the code, pls correct me.....

Answer

BKM picture BKM · Sep 3, 2013

In Restangular posts should be done to collections not elements.

In your case POST should be made like this;

$scope.user = {email :"", password: "", confpass: ""};

Then make POST request like;

Restangular.all('data.json/:user').post("users", $scope.user);

Reference;

https://github.com/mgonto/restangular#element-methods