From 63fdebbc8c2daa0769c269f188619eff0f101b7d Mon Sep 17 00:00:00 2001 From: nesnoj Date: Wed, 12 Jun 2019 16:34:23 +0200 Subject: [PATCH] add dummy proxy model for layer results #38 --- models.py | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/models.py b/models.py index 27955b4c..bba2b37c 100644 --- a/models.py +++ b/models.py @@ -472,6 +472,39 @@ class RegInfrasAviation(LayerModel): ########################## # Layer models (results) # ########################## +class ResultLayerModel(RegMun): + """This model is a dummy proxy model for displaying layer results + + Notes + ----- + It bases the municipalities' model :class:`stemp_abw.models.RegMun` which + is required (geom, names) for all result layers. The result data column + cannot be defined using property decorator as the results are stored in + :class:`stemp_abw.results.results.Results` which is connected to a + session and not accessible from models. Instead, the result column is + dynamically added in the serial view + :class:`stemp_abw.views.serial_views.GeoJSONResultLayerData`. + """ + name = None + + class Meta: + proxy = True + + @classmethod + def name_init(cls, name): + """Class method to set model name property which is needed to match the + layer configuration (config/layers_results.cfg) and control (associated + layer switch in GUI). + + Parameters + ---------- + name : :obj:`str` + Model name as used in config/layers_results.cfg + """ + cls.name = name + return cls + + # TODO: Alter extended classes to result classes class RegMunEnergyReElDemShareResult(RegMunGenEnergyRe, RegMunDemElEnergy): name = 'reg_mun_energy_re_el_dem_share_result'