将角度模型传递给SailsJs

时间:2014-03-21 13:49:23

标签: angularjs sails.js

我试图通过$ http.post从AngularJS传递一个表单到Sailsjs

My Sails Controller

  create: function(req, res) {
    console.log("req: "+req.param('user.firstName')); 

    res.send(req.param('user.firstName'));

   },

我的角度控制器

    function RegisterController($scope, $http) {

        $scope.submit = function(){
            console.log($scope.user.firstName); // works fine so far 
            $http.post('/user/create', $scope.user)
                .success(function(data, status, headers, config) {
                  console.log("success");
                })
                .error(function(data, status, headers, config) {
                  console.log("error");
                });

        }

    }

如果我调用我的sails函数就像这样/user/create?user.firstName=myFirstName,它的工作正常。但是,如果我从角度传递,我会尝试读取传递的数据。我不知道。我看不懂那个......

有人有任何想法或小例子吗?

干杯真棒社区=)

1 个答案:

答案 0 :(得分:2)

您将$scope.user对象发布到您的路线,因此它不会在user下命名。如果$scope.user包含,例如:

{firstName: "John", lastName: "Doe"}

然后它们将在您的控制器操作中显示为req.param('firstName')req.param('lastName')

如果您要将整个 $scope对象发布到/user/create(请勿执行此操作!),那么您将能够访问req.param('user').firstNamereq.param('user').lastName等。但您仍然无法访问req.param('user.firstName')之类的内容;这些是Angular表达式,但它们在服务器端不起作用。