Использование фильтра на основе пути с Restangular Object

0

Поэтому у меня есть проект с двумя вызовами 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');
})
;'
Теги:
restangular

1 ответ

0

Вот как я это решил.

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 в двух местах, но, по крайней мере, он работает.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню