Поэтому у меня есть проект с двумя вызовами api:
GET/certificate/pending - возвращает все ожидающие сертификаты POST/сертификаты//одобряет (или отклоняет) - утверждает сертификат.
Проблема, с которой я сталкиваюсь, заключается в том, что я не уверен, как добавить/в ожидании команды getList(), но не к самому объекту, поэтому Restangular пытается выполнить POST в /certificate/pending//approve, что isn ' t допустимый путь.
angular.module( 'approvals', [
'ui.router'
])
.config(function config( $stateProvider, RestangularProvider ) {
$stateProvider.state( 'system.approvals', {
url: '/approvals',
controller: 'ApprovalsCtrl',
templateUrl: 'approvals/approvals.tpl.html',
data:{ pageTitle: 'Approvals' },
authenticate: true,
resolve:{
certificates: function(Certificates){
return Certificates.all('pending').getList();
}
}
});
})
.factory('Certificates', function(Restangular){
return Restangular.service('certificates');
})
;'
Вот как я это решил.
angular.module( 'approvals', [
'ui.router'
])
.config(function config( $stateProvider, RestangularProvider ) {
$stateProvider.state( 'system.approvals', {
url: '/approvals',
controller: 'ApprovalsCtrl',
templateUrl: 'approvals/approvals.tpl.html',
data:{ pageTitle: 'Approvals' },
authenticate: true,
resolve:{
certificates: function(Certificates){
return Restangular.allUrl('certificates', 'http://apiURL/certificates/pending').getList();
}
}
});
})
;'
Это не оптимально, так как теперь я должен управлять apiURL в двух местах, но, по крайней мере, он работает.