summaryrefslogtreecommitdiff
path: root/archaeological_warehouse
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@iggdrasil.net>2018-10-16 17:02:58 +0200
committerÉtienne Loks <etienne.loks@iggdrasil.net>2018-10-16 17:02:58 +0200
commit932df423de39c878111fd7afae0be153910062bb (patch)
tree59399442d667e36ee901051e48e1eab2efea2cc1 /archaeological_warehouse
parent785d6dbe94ef643ddbd1860de9bf9318878a4e35 (diff)
downloadIshtar-932df423de39c878111fd7afae0be153910062bb.tar.bz2
Ishtar-932df423de39c878111fd7afae0be153910062bb.zip
Natural key for warehouse, container.
Diffstat (limited to 'archaeological_warehouse')
-rw-r--r--archaeological_warehouse/models.py10
1 files changed, 9 insertions, 1 deletions
diff --git a/archaeological_warehouse/models.py b/archaeological_warehouse/models.py
index 03397161a..280890c83 100644
--- a/archaeological_warehouse/models.py
+++ b/archaeological_warehouse/models.py
@@ -30,7 +30,7 @@ from django.utils.translation import ugettext_lazy as _, pgettext_lazy, \
from ishtar_common.data_importer import post_importer_action
from ishtar_common.models import Document, GeneralType, get_external_id, \
LightHistorizedItem, OwnPerms, Address, Person, post_save_cache, \
- ImageModel, DashboardFormItem
+ ImageModel, DashboardFormItem, ExternalIdManager
from ishtar_common.utils import cached_label_changed
@@ -69,6 +69,7 @@ class Warehouse(Address, DashboardFormItem, OwnPerms):
activate(language_code)
EXTRA_REQUEST_KEYS[unicode(v[0])] = v[1]
deactivate()
+ objects = ExternalIdManager()
name = models.CharField(_(u"Name"), max_length=200)
warehouse_type = models.ForeignKey(WarehouseType,
@@ -102,6 +103,9 @@ class Warehouse(Address, DashboardFormItem, OwnPerms):
def __unicode__(self):
return self.name
+ def naturel_key(self):
+ return (self.external_id, )
+
def _get_base_image_path(self):
return u"{}/{}".format(self.SLUG, self.external_id)
@@ -356,6 +360,7 @@ class Container(LightHistorizedItem, ImageModel):
activate(language_code)
EXTRA_REQUEST_KEYS[unicode(v[0])] = v[1]
deactivate()
+ objects = ExternalIdManager()
# fields
location = models.ForeignKey(
@@ -397,6 +402,9 @@ class Container(LightHistorizedItem, ImageModel):
lbl = u"{} ({})".format(self.reference, self.container_type)
return lbl
+ def natural_key(self):
+ return (self.external_id, )
+
def _generate_cached_label(self):
items = [self.reference, self.precise_location]
cached_label = u" | ".join(items)