summaryrefslogtreecommitdiff
path: root/archaeological_warehouse/models.py
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@iggdrasil.net>2023-01-19 19:22:41 +0100
committerÉtienne Loks <etienne.loks@iggdrasil.net>2023-01-19 19:22:41 +0100
commitf81bf9854a58827f36d5eb0a4303bad5fc64c558 (patch)
treef9607b86e517c38ba6b2e90ea9768f9ad0489a15 /archaeological_warehouse/models.py
parentc417cc6de4d7f9100af4b5e49215afc08c9a443a (diff)
downloadIshtar-f81bf9854a58827f36d5eb0a4303bad5fc64c558.tar.bz2
Ishtar-f81bf9854a58827f36d5eb0a4303bad5fc64c558.zip
Warehouse: cached town column
Diffstat (limited to 'archaeological_warehouse/models.py')
-rw-r--r--archaeological_warehouse/models.py24
1 files changed, 19 insertions, 5 deletions
diff --git a/archaeological_warehouse/models.py b/archaeological_warehouse/models.py
index 0997d6ea7..3f4913d4b 100644
--- a/archaeological_warehouse/models.py
+++ b/archaeological_warehouse/models.py
@@ -284,7 +284,11 @@ class Warehouse(
MODEL = "warehouse"
SHOW_URL = "show-warehouse"
DELETE_URL = "delete-warehouse"
- TABLE_COLS = ["name", "warehouse_type__label"]
+ TABLE_COLS = ["name", "warehouse_type__label", "cached_town_label"]
+ COL_LABELS = {
+ "warehouse_type__label": _("Type"),
+ "cached_town_label": _("Town"),
+ }
NEW_QUERY_ENGINE = True
BASE_SEARCH_VECTORS = [
SearchVectorConfig("name"),
@@ -294,9 +298,6 @@ class Warehouse(
SearchVectorConfig("precise_town__name"),
SearchVectorConfig("comment", "local"),
]
- COL_LABELS = {
- "warehouse_type__label": _("Type"),
- }
EXTRA_REQUEST_KEYS = {
"warehouse_type__label": "warehouse_type__label",
@@ -319,7 +320,7 @@ class Warehouse(
}
GEO_LABEL = "name"
DOWN_MODEL_UPDATE = ["containers"]
- CACHED_LABELS = []
+ CACHED_LABELS = ["cached_town_label"]
QA_EDIT = QuickAction(
url="warehouse-qa-bulk-update",
@@ -394,6 +395,12 @@ class Warehouse(
default=0,
help_text=_("Automatically generated"),
)
+ cached_town_label = models.TextField(
+ _("Cached town label"),
+ blank=True,
+ default="",
+ help_text=_("Generated automatically - do not edit"),
+ )
SUB_ADDRESSES = ["organization", "person_in_charge"]
class Meta:
@@ -640,6 +647,13 @@ class Warehouse(
wdiv.delete()
merge_model_objects(self, item, keep_old=keep_old)
+ def _generate_cached_town_label(self):
+ if self.precise_town:
+ return str(self.precise_town)
+ if self.town:
+ return self.town
+ return ""
+
def save(self, *args, **kwargs):
self.update_search_vector()
super(Warehouse, self).save(*args, **kwargs)