我正在尝试在MongoLab集合中使用自定义索引,但我无法弄清楚如何使用此自定义索引获取Restangular.one响应。事实上,我甚至无法使用带有自定义索引的网址来确定如何将调用发送到MongoLab。
因此,例如,我的收藏集添加了自定义索引" sitename"。我试过这个:
.when('/sites/:sitename', {
templateUrl: 'views/site.html',
controller: 'SiteCtrl',
resolve: {
site: function(Restangular, $route){
return Restangular.one('sites', $route.current.params.sitename).get();
}
}
})
但那并没有奏效。 (我并不感到惊讶)。我也试过添加“网站名称”。到setRestangularFields部分:
RestangularProvider.setRestangularFields({
id: '_id.$oid'
});
这也没有帮助。
感谢您的帮助,
斯科特
答案 0 :(得分:0)
我在Martin(Restangular制造商)和MongoLab支持的帮助下解决了这个问题。事实证明我需要使用Restangular执行customGet并使用q:参数来满足MongoLab。最后一段代码改为一行:
return Restangular.all('sites').customGET("", {q: { "sitename" : $route.current.params.sitename } });
所以,整个部分看起来像这样:
.when('/sites/:sitename', {
templateUrl: 'views/site.html',
controller: 'SiteCtrl',
resolve: {
site: function(Restangular, $route){
return Restangular.all('sites').customGET("", {q: { "sitename" : $route.current.params.sitename } });
}
}
})
希望这会对你有所帮助。
斯科特