如何配置Restangular URL building的Id属性

时间:2013-08-12 02:16:48

标签: ajax angularjs httprequest restangular

可让

Restangular.one('users').getList().then(function(users) {
  $scope.user = users[0]; 
});

另一个GET请求:

让我们:user: { id: '123' }

$scope.cars = $scope.user.getList('cars');这会触发GET请求:/ users / 123 / cars

123 来自 id属性


问题:

是否可以明确配置我的对象的 id属性,例如:名为用户名

user: { username: '123' }

2 个答案:

答案 0 :(得分:7)

更好的答案是设置特定服务的id字段。

angular.module('app')
   .service('SomeService', ['rootUrl', 'Restangular', function SomeService(rootUrl, Restangular) {
     return Restangular.withConfig(function (config) {
     config.setRestangularFields({"id": "username"});
   }).all('cars');
}]);

答案 1 :(得分:1)

您可以为所有对象更改它,但不能仅为一个对象更改它。只有我能想到的选项只是在addElementTransformer user.id = user.username中进行设置,它才会起作用。