0

我设置了以下资源、函数和单元格模板:

var Exam = $resource('/api/Tests', {}, {
    saveData: { method: 'PUT' }
});
$scope.delete = function (row) {
    row.entity.$delete(row.examId);
}
$scope.updateEntity = function (column, row) {
    console.log(row.entity);
    console.log(column.field);
    row.entity.$saveData();
}

{ field: '', cellTemplate: '<button ng-click="delete(row)">Delete</button>' }

但是我发现它只是发送:

   DELETE /api/Tests HTTP/1.1

有没有办法可以更改资源,以便如果行 testId 等于 1 则它正确发送

   DELETE /api/Tests/1

请注意,我已经尝试了以下操作,但它仍将相同的 URL 发送到我的服务器:

   row.entity.$delete(row.entity.testId)

还有一件事。我的 updateEntity 工作并发送一个 put 以及该行的 json

4

1 回答 1

2

您可以像这样更改资源的 url:

var Exam = $resource('api/Tests/:id, {id:'default value here'});

Exam.$delete({id:1});

或者重新定义删除操作:

var Exam = $resource('api/Tests, {}, {
    $delete: {
        method: 'DELETE',
        params: {id: 'some value here'}
    }
});

看看这个类似的问题:https ://stackoverflow.com/a/13275194/1036025

于 2013-04-11T16:23:05.563 回答