我想配置一个角度$资源。这个$资源应该允许调用远程Web服务。
// Gets all the nested-resources of a parent-resource
1) GET /parent-resource/nested-resources
// Gets a nested-resource by id
2) GET /nested-resource/{id}
// Create a nested resource
3) POST /nested-resource
在我的场景中,我想使用第一个Web服务检索所有嵌套资源。当用户修改嵌套资源时,将使用第三个Web服务保存嵌套资源。
var NestedResource = $resource('/nested-resource/:id');
Publishable.prototype.isNew = function() {
return this.id === undefined;
};
... lot of functions...
此配置适用于第2和第3个Web服务,但如何配置资源以使用1st。有几个函数在嵌套资源原型上注册,我想避免创建特定的$ resource。
Publishable.prototype.getByParentId = function(parentId) {
// ??
}
答案 0 :(得分:1)
在资源上创建自定义操作,如下所示:
var NestedResource = $resource('/nested-resource/:id',,
{ action: "getAll",
method: "GET",
isArray: true,
url: '/parent-resource/:parentId/nested-resources'
});
现在你应该可以做到:
var allItems = NestedResource.getAll({parentId: 1});
检索parentId 1的列表。