Example #1
0
 def series_params(self):
     """ Params for series
     """
     params = {}
     if self.location is not None:
         ident = self.location.ident
         # location_postpend
         if self.location_postpend:
             ident += self.location_postpend
         if self.related_location:
             # Fetch related location ident instead of own location ident
             source = self.fews_norm_source
             fews_location = Location.from_raw(
                 schema_prefix=source.database_schema_name,
                 ident=ident,
                 related_location=self.related_location).using(
                 source.database_name)[0]
             params['location'] = fews_location.related_location
         else:
             # Default
             params['location'] = ident
     if self.parameter is not None:
         params['parameter'] = self.parameter.ident
     if self.module is not None:
         params['moduleinstance'] = self.module.ident
     if self.time_step is not None:
         params['timestep'] = self.time_step.ident
     if self.qualifierset is not None:
         params['qualifierset'] = self.qualifierset.ident
     return params
Example #2
0
 def get_related_location(self, ident, related_location_field):
     """Retrieve id of related location from fews db."""
     locations = GeoLocationCache.objects.filter(ident=ident)
     if locations.exists():
         location = locations[0]
         source = self.fews_norm_source(location)
         fews_location = Location.from_raw(
             schema_prefix=source.database_schema_name,
             ident=location.ident,
             related_location=related_location_field).using(
             source.database_name)[0]
         return fews_location.related_location