diff options
Diffstat (limited to 'ishtar_common/serializers_utils.py')
| -rw-r--r-- | ishtar_common/serializers_utils.py | 8 | 
1 files changed, 6 insertions, 2 deletions
diff --git a/ishtar_common/serializers_utils.py b/ishtar_common/serializers_utils.py index efa390e59..e3b132ae0 100644 --- a/ishtar_common/serializers_utils.py +++ b/ishtar_common/serializers_utils.py @@ -108,7 +108,7 @@ def archive_serialization(result, archive_dir=None, archive=False,  def generic_get_results(model_list, dirname, no_geo=True, -                        result_queryset=None): +                        result_queryset=None, serialization_include=None):      result = OrderedDict()      for model in model_list:          base_model_name = model.__name__ @@ -173,11 +173,15 @@ def generic_get_results(model_list, dirname, no_geo=True,          excluded_fields = ["history_modifier", "history_creator", "imports",                             "locked", "lock_user"]          if hasattr(model, "SERIALIZATION_EXCLUDE"): -            excluded_fields = list(model.SERIALIZATION_EXCLUDE) +            excluded_fields += list(model.SERIALIZATION_EXCLUDE)          if no_geo:              excluded_fields += ["center", "limit"] + [                  field.name for field in models.GeoItem._meta.get_fields()              ] +        if serialization_include and model.__name__ in serialization_include: +            for k in serialization_include[model.__name__]: +                if k in excluded_fields: +                    excluded_fields.pop(excluded_fields.index(k))          if excluded_fields:              new_result = json.loads(result[key])              for idx in range(len(new_result)):  | 
