summaryrefslogtreecommitdiff
path: root/archaeological_warehouse/models.py
diff options
context:
space:
mode:
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)