diff options
author | Étienne Loks <etienne.loks@iggdrasil.net> | 2023-03-21 22:27:58 +0100 |
---|---|---|
committer | Étienne Loks <etienne.loks@iggdrasil.net> | 2023-04-03 12:48:00 +0200 |
commit | a847ded15c80dfa0b16dee5c1ea109da06af7b34 (patch) | |
tree | e981f729ceae0a4444105323ed3ad16b9a7a9bc6 /archaeological_warehouse | |
parent | 05911c88dacbc5dd974fa5697dd08e9ab1d35d1d (diff) | |
download | Ishtar-a847ded15c80dfa0b16dee5c1ea109da06af7b34.tar.bz2 Ishtar-a847ded15c80dfa0b16dee5c1ea109da06af7b34.zip |
Load task refactoring - manage external_id regen with tasks - cascade update from warehouse to containers (refs #5432) - containers manage history
Diffstat (limited to 'archaeological_warehouse')
-rw-r--r-- | archaeological_warehouse/migrations/0101_squashed.py | 6 | ||||
-rw-r--r-- | archaeological_warehouse/models.py | 9 |
2 files changed, 8 insertions, 7 deletions
diff --git a/archaeological_warehouse/migrations/0101_squashed.py b/archaeological_warehouse/migrations/0101_squashed.py index 733cfc5cf..bb9a3a4b0 100644 --- a/archaeological_warehouse/migrations/0101_squashed.py +++ b/archaeological_warehouse/migrations/0101_squashed.py @@ -46,7 +46,7 @@ class Migration(migrations.Migration): 'ordering': ('name',), }, bases=(ishtar_common.models.StatisticItem, - ishtar_common.models.TemplateItem, models.Model, ishtar_common.models.CachedGen, ishtar_common.models_common.FixAssociated, ishtar_common.models.CascasdeUpdate), + ishtar_common.models.TemplateItem, models.Model, ishtar_common.models.CachedGen, ishtar_common.models_common.FixAssociated), ), migrations.CreateModel( name='Container', @@ -91,7 +91,7 @@ class Migration(migrations.Migration): 'permissions': (('view_own_container', 'Can view own Container'), ('add_own_container', 'Can add own Container'), ('change_own_container', 'Can change own Container'), ('delete_own_container', 'Can delete own Container')), }, bases=(ishtar_common.models.DocumentItem, - ishtar_common.models.StatisticItem, ishtar_common.models.TemplateItem, models.Model, ishtar_common.models.CachedGen, ishtar_common.models_common.FixAssociated, ishtar_common.models.CascasdeUpdate, ishtar_common.models.ImageContainerModel, ishtar_common.models.OwnPerms, ishtar_common.models.MainItem), + ishtar_common.models.StatisticItem, ishtar_common.models.TemplateItem, models.Model, ishtar_common.models.CachedGen, ishtar_common.models_common.FixAssociated, ishtar_common.models.ImageContainerModel, ishtar_common.models.OwnPerms, ishtar_common.models.MainItem), ), migrations.CreateModel( name='ContainerLocalisation', @@ -183,7 +183,7 @@ class Migration(migrations.Migration): 'permissions': (('view_own_warehouse', 'Can view own Warehouse'), ('add_own_warehouse', 'Can add own Warehouse'), ('change_own_warehouse', 'Can change own Warehouse'), ('delete_own_warehouse', 'Can delete own Warehouse')), }, bases=(ishtar_common.models.StatisticItem, - ishtar_common.models.TemplateItem, ishtar_common.models.DocumentItem, models.Model, ishtar_common.models.CachedGen, ishtar_common.models_common.FixAssociated, ishtar_common.models.CascasdeUpdate, ishtar_common.models.ImageContainerModel, ishtar_common.models.DashboardFormItem, ishtar_common.models.OwnPerms, ishtar_common.models.MainItem), + ishtar_common.models.TemplateItem, ishtar_common.models.DocumentItem, models.Model, ishtar_common.models.CachedGen, ishtar_common.models_common.FixAssociated, ishtar_common.models.ImageContainerModel, ishtar_common.models.DashboardFormItem, ishtar_common.models.OwnPerms, ishtar_common.models.MainItem), ), migrations.CreateModel( name='WarehouseDivision', diff --git a/archaeological_warehouse/models.py b/archaeological_warehouse/models.py index 00500bdcf..f88631d80 100644 --- a/archaeological_warehouse/models.py +++ b/archaeological_warehouse/models.py @@ -285,11 +285,13 @@ class Warehouse( MODEL = "warehouse" SHOW_URL = "show-warehouse" DELETE_URL = "delete-warehouse" + DOWN_MODEL_UPDATE = ["containers", "responsibilities"] TABLE_COLS = ["name", "warehouse_type__label", "cached_town_label"] COL_LABELS = { "warehouse_type__label": _("Type"), "cached_town_label": _("Town"), } + INITIAL_VALUES = ["name", "slug"] NEW_QUERY_ENGINE = True BASE_SEARCH_VECTORS = [ SearchVectorConfig("name"), @@ -320,7 +322,6 @@ class Warehouse( ), } GEO_LABEL = "name" - DOWN_MODEL_UPDATE = ["containers"] FORCE_CASCADE_UPDATE = True CACHED_LABELS = ["cached_town_label"] @@ -671,9 +672,8 @@ class Warehouse( self.external_id = external_id updated = True if updated: - self.skip_history_when_saving = True + self.no_post_process() self._cached_label_checked = False - self.force_update = True self.save() @@ -1458,6 +1458,7 @@ class Container( ): if child.location != parent.location: child.location = parent.location + child.skip_history_when_saving = True child.save() cls._change_child_location(child) @@ -1926,7 +1927,7 @@ class Container( def save(self, *args, **kwargs): self.pre_save() - super(Container, self).save(*args, **kwargs) + super().save(*args, **kwargs) self._change_child_location(self) updated = False updated += self._prevent_parent_infinite_loop() |