подключение ресурсов
Как исходя из значения паременной обратиться к тому или иному ресурсу, например, если у переменной значение
$param = "flats", то и сделать запрос через Flats.query, а если $param = "cars", то через Cars? На данный момент я подключаю ресурсы через параметры функции контроллера, есть ли возможность написать функцию, которая возвращает нужный ресурс в зависимости от переданного параметра, например getResource("cars"); и эта функция возвращает ресурс Cars |
Для начала вот такой топорный вариант.
Пример из реального приложения, ресурсы создаются по мере надобности только на основании имени. В рамках моих задач решение меня устраивает полностью, в твоем случае не знаю подойдет ли.
//обьявление
resource.factory("recordResource", function ($resource) {
return function(name){
return $resource('/document/:operation/:name/', {
name:name
},{
'get': {method:'GET',params:{operation:'get'} },
'save': {method:'POST', params:{operation:'save'} }
//....
});
}
});
//использование
//можно указаnь часть параметров еще до вызова get. В примере я указал имя сущности (user) на сервере с которой я хочу взаимодействовать.
a=recordResource('user');
//получим данные из user
a.$get({id:10},function(){
})
Как альтернатива фабрика возвращающий сервисы Конечно придется перечислить все возвращаемые сервисы в параметрах функции фабрики, но зато все это будет перечислено в одном месте. Вроде бы особых препятствий я не вижу, но возможно я что то упустил из виду. Нужно пробывать короче. |
| Часовой пояс GMT +3, время: 13:04. |