Я использую угловой ресурс с разными сущностями, и я должен вызвать для каждого из этих объектов некоторые пользовательские методы с настраиваемыми URL-адресами.
Например:
var actions = {
create: {
method: 'POST'
},
customMethod: {
method: 'PUT',
url: '/api/entity1/:id/custom',
params: {
id: '@id'
},
}
}
$resource('/api/entity1/:id', null, actions);
$resource('/api/entity2/:id', null, actions);
$resource('/api/entity3/:id', null, actions);
Таким образом, obviusly, customMethod будет работать только на entity1, потому что URL-адрес не является общим. Как я могу создать пользовательское действие без определения URL-адресов, как это было при создании действия?
благодаря
вы можете использовать несколько переменных при использовании $ resource. замещать
url: '/api/entity1/:id/custom'
с
url: '/api/:entity/:id/custom'
и используйте соответствующие параметры при вызове функции $ resource.
Добавьте параметр действия для настраиваемого метода и URL-адреса:
var actions = {
create: {
method: 'POST'
},
customMethod: {
method: 'PUT',
params: { action: 'custom' },
}
}
$resource('/api/entity1/:id/:action', null, actions);
$resource('/api/entity2/:id/:action', null, actions);