summaryrefslogtreecommitdiff
path: root/ishtar_common/serializers_utils.py
diff options
context:
space:
mode:
Diffstat (limited to 'ishtar_common/serializers_utils.py')
-rw-r--r--ishtar_common/serializers_utils.py8
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)):