def _get_models_from_layername(self, layers_param): layers = self._get_layer_list_from_map() if layers_param == 'all' else layers_param.split(':')[1].split(',') models = [ validateLayerId(layer) for layer in layers if validateLayerId(layer) is not None ] return models
def _get_feature_resource(self): idfeature = self.request.matchdict.get('idfeature') idlayer = self.request.matchdict.get('idlayer') model = validateLayerId(idlayer)[0] query = self.request.db.query(model).filter(model.id==idfeature) if self.returnGeometry: feature = [f.__geo_interface__ for f in query] else: feature = [f.__interface__ for f in query] feature = {'feature': feature.pop()} if len(feature) > 0 else exc.HTTPBadRequest('No feature with id %s' % idfeature) template = model.__template__ return feature, template