diff options
| -rw-r--r-- | archaeological_warehouse/models.py | 1 | ||||
| -rw-r--r-- | ishtar_common/models.py | 6 | 
2 files changed, 6 insertions, 1 deletions
diff --git a/archaeological_warehouse/models.py b/archaeological_warehouse/models.py index 3dba70355..a1565a687 100644 --- a/archaeological_warehouse/models.py +++ b/archaeological_warehouse/models.py @@ -827,6 +827,7 @@ class Container(DocumentItem, LightHistorizedItem, QRCodeItem, GeoItem,                  self.index = 1      def save(self, *args, **kwargs): +        self.pre_save()          super(Container, self).save(*args, **kwargs)          updated = False diff --git a/ishtar_common/models.py b/ishtar_common/models.py index 7d7b6c872..faf3ad3dd 100644 --- a/ishtar_common/models.py +++ b/ishtar_common/models.py @@ -2542,7 +2542,11 @@ def get_external_id(key, item):                  obj = getattr(obj, k)              except ObjectDoesNotExist:                  obj = None -            if callable(obj): +            if hasattr(obj, 'all') and hasattr(obj, 'count'):  # query manager +                if not obj.count(): +                    break +                obj = obj.all()[0] +            elif callable(obj):                  obj = obj()              if obj is None:                  break  | 
