diff options
Diffstat (limited to 'ishtar_common/models_common.py')
-rw-r--r-- | ishtar_common/models_common.py | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/ishtar_common/models_common.py b/ishtar_common/models_common.py index bf1d10b5a..0d8eeac54 100644 --- a/ishtar_common/models_common.py +++ b/ishtar_common/models_common.py @@ -2566,6 +2566,10 @@ class DocumentItem: ) @property + def images_number(self): + return self.images.count() + + @property def images_without_main_image(self): if not hasattr(self, "main_image") or not hasattr(self, "documents"): return self.images @@ -3251,7 +3255,8 @@ class ShortMenuItem: class SerializeItem: SERIALIZE_EXCLUDE = ["search_vector"] - SERIALIZE_PROPERTIES = ["external_id", "multi_polygon_geojson", "point_2d_geojson"] + SERIALIZE_PROPERTIES = ["external_id", "multi_polygon_geojson", "point_2d_geojson", + "images_number", "json_sections"] SERIALIZE_CALL = {} SERIALIZE_DATES = [] SERIALIZATION_FILES = [] @@ -3279,7 +3284,7 @@ class SerializeItem: and hasattr(value, "full_serialize") and not recursion ): - # print(field.name) + #print(field.name, self.__class__, self) value = value.full_serialize(recursion=True) elif field_name in self.SERIALIZATION_FILES: try: @@ -3300,7 +3305,7 @@ class SerializeItem: and hasattr(first_value, "full_serialize") and not recursion ): - # print(field.name) + #print(field.name, self.__class__, self) values = [ v.full_serialize(recursion=True) for v in values.all() ] @@ -3309,7 +3314,7 @@ class SerializeItem: values = [] for v in values: try: - values.append({"url": value.url}) + values.append({"url": v.url}) except ValueError: pass else: @@ -3330,8 +3335,6 @@ class SerializeItem: result = json.loads(serialize("json", [self], fields=serialize_fields)) full_result.update(result[0]["fields"]) - if "main_image" in full_result: - print(full_result["main_image"]) for prop in self.SERIALIZE_PROPERTIES: if hasattr(self, prop) and prop not in full_result: full_result[prop] = getattr(self, prop) |