diff options
Diffstat (limited to 'ishtar_common/models_common.py')
-rw-r--r-- | ishtar_common/models_common.py | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/ishtar_common/models_common.py b/ishtar_common/models_common.py index 4ab97cf58..2074aa523 100644 --- a/ishtar_common/models_common.py +++ b/ishtar_common/models_common.py @@ -2469,7 +2469,7 @@ class GeoVectorData(Imported, OwnPerms): SERIALIZE_EXCLUDE = [] - def full_serialize(self, search_model, recursion=False): + def full_serialize(self, search_model, recursion=False, request=None): dct = {} fields = [ "id", @@ -3134,7 +3134,7 @@ class SerializeItem: SERIALIZATION_FILES = [] SERIALIZE_STRING = [] - def full_serialize(self, search_model=None, recursion=False) -> dict: + def full_serialize(self, search_model=None, recursion=False, request=None) -> dict: """ API serialization :return: data dict @@ -3172,10 +3172,10 @@ class SerializeItem: # print(field.name, self.__class__, self) if field_name == "main_geodata" and no_geodata: continue - value = value.full_serialize(search_model, recursion=True) + value = value.full_serialize(search_model, recursion=True, request=request) elif field_name in self.SERIALIZATION_FILES: try: - value = {"url": value.url} + value = {"url": request.build_absolute_uri(value.url)} except ValueError: value = None else: @@ -3196,7 +3196,7 @@ class SerializeItem: ): # print(field.name, self.__class__, self) values = [ - v.full_serialize(search_model, recursion=True) + v.full_serialize(search_model, recursion=True, request=request) for v in values.all() ] else: @@ -3204,7 +3204,7 @@ class SerializeItem: values = [] for v in values: try: - values.append({"url": v.url}) + values.append({"url": request.build_absolute_uri(v.url)}) except ValueError: pass else: @@ -3216,7 +3216,7 @@ class SerializeItem: if field_name in self.SERIALIZATION_FILES: value = getattr(self, field_name) try: - value = {"url": value.url} + value = {"url": request.build_absolute_uri(value.url)} except ValueError: value = None full_result[field.name] = value |