通过使用 name 而不是 id 来使用 restangular 修改资源

modify resource using restangular by making put on name not id

我有配置文件资源

  1. 个人资料名称,
  2. 名字,
  3. 姓氏和
  4. id

这里的 profileName 是唯一的,用作资源标识符,id 只是一个计数。

要修改接受请求的资源 http://localhost:9090/messanger/api/[profileName]

现在的问题是每当我发出放置请求时,它都会用 ID 替换配置文件名称。我无法对 profileName 发出 restangular put 请求。

代码如下

$scope.editUser=function(id){
          var profile=$scope.profiles[id];
          $scope.profile=profile;
          profile.save().then(function(res){
              console.log(res);
          });
      }

原来是后端处理put请求的方法有问题。我传递的对象在 java 代码中有 4 个属性,但是当我从前端传递它时,我只传递了 3 个。之前我尝试

var items=Restanular.all("profiles").getList();
var item=items[i];
item.propertyName=New Value;
item.save();

这应该是理想的工作,但我认为它需要更多的东西,因为当我调用保存方法时它在 http://localhost:9090/messanger/api/ 上发出请求 而不是在 http://localhost:9090/messanger/api/[profileName]

上提出请求