diff options
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 |
commit | 932df423de39c878111fd7afae0be153910062bb (patch) | |
tree | 59399442d667e36ee901051e48e1eab2efea2cc1 /archaeological_warehouse | |
parent | 785d6dbe94ef643ddbd1860de9bf9318878a4e35 (diff) | |
download | Ishtar-932df423de39c878111fd7afae0be153910062bb.tar.bz2 Ishtar-932df423de39c878111fd7afae0be153910062bb.zip |
Natural key for warehouse, container.
Diffstat (limited to 'archaeological_warehouse')
-rw-r--r-- | archaeological_warehouse/models.py | 10 |
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) |