Angular表单没有更新

时间:2015-12-07 16:29:44

标签: javascript jquery angularjs

我试图以角度更新我的表单但我收到错误。 这是我的角度代码。

app.controller('userEditController', [
  '$scope', '$resource', 'EditUser', '$routeParams', '$location', function($scope, $resource, EditUser, $routeParams, $location) {
console.log($routeParams.id);
$scope.user = EditUser.show({
  id: $routeParams.id
});
 $scope.updateUser = function() {
    userData = JSON.stringify($scope.user); 

    $scope.user = JSON.parse(userData);
    console.log($scope.user['id']);
    console.log($scope.user);

    $('#loading').removeClass('hidden');
    return EditUser.update({
        id: $scope.user['id']
    }, {
        user: userData
    }, (function() {
        $('#loading').addClass('hidden');
        return $location.path('/users');
    }), function(error) {
        return console.log(error);
    });
  };
 }
 ]);

但是当我尝试使用任何Api工具时,它的工作正常。 请指导我。

  

Object {data:" org.codehaus.jackson.map.exc.UnrecognizedPropertyE ... ustomerportal.rest.data.CustomerUserData [" user"])",status:400, headers:function,config:Object,statusText:" Bad Request"} config:Objectdata:" org.codehaus.jackson.map.exc.UnrecognizedPropertyException:无法识别的字段" user" (类com.datacode2.customerportal.rest.data.CustomerUserData),未在[来源:org.apache.catalina.connector.CoyoteInputStream@167ab67;标记为ignorable↵; line:1,column:10](通过引用链:com.datacode2.customerportal.rest.data.CustomerUserData [" user"])" headers:function(name){status:400statusText: "错误请求" proto :对象

这是错误的图像。

enter image description here

1 个答案:

答案 0 :(得分:0)

肯定问题不在于前端。保存用户的服务失败并返回错误请求。

input

您似乎在后端使用Jackson来保存用户。当您尝试更新用户时,您需要发送两个元素:

Objectdata: "org.codehaus.jackson.map.exc.UnrecognizedPropertyException: Unrecognized field "user"

您的后端代码并没有抱怨" id"属性,但它确实抱怨"用户"属性,所以你必须检查你的服务实际上会收到什么。可能它并不期望收到userData,至少不会以你发送它的方式。随意发布您的服务后端代码。