summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--archaeological_finds/migrations/0152_find_cached_hierarchy_material_types.py24
-rw-r--r--archaeological_finds/models_finds.py7
2 files changed, 31 insertions, 0 deletions
diff --git a/archaeological_finds/migrations/0152_find_cached_hierarchy_material_types.py b/archaeological_finds/migrations/0152_find_cached_hierarchy_material_types.py
new file mode 100644
index 000000000..b0d959ff8
--- /dev/null
+++ b/archaeological_finds/migrations/0152_find_cached_hierarchy_material_types.py
@@ -0,0 +1,24 @@
+# Generated by Django 4.2.21 on 2026-04-07 18:45
+
+import django.contrib.postgres.fields
+from django.db import migrations, models
+
+
+class Migration(migrations.Migration):
+
+ dependencies = [
+ ('archaeological_finds', '0151_data_migration_find_relation_type'),
+ ]
+
+ operations = [
+ migrations.AddField(
+ model_name='find',
+ name='cached_hierarchy_material_types',
+ field=django.contrib.postgres.fields.ArrayField(base_field=models.TextField(), blank=True, default=list, size=None),
+ ),
+ migrations.AddField(
+ model_name='historicalfind',
+ name='cached_hierarchy_material_types',
+ field=django.contrib.postgres.fields.ArrayField(base_field=models.TextField(), blank=True, default=list, size=None),
+ ),
+ ]
diff --git a/archaeological_finds/models_finds.py b/archaeological_finds/models_finds.py
index 400ec7e2c..4a8a4ee93 100644
--- a/archaeological_finds/models_finds.py
+++ b/archaeological_finds/models_finds.py
@@ -24,6 +24,7 @@ import uuid
from django.apps import apps
from django.conf import settings
from django.contrib.gis.db import models
+from django.contrib.postgres.fields import ArrayField
from django.contrib.postgres.indexes import GinIndex
from django.db.models import Max, Q, F
from django.db.models.signals import m2m_changed, post_save, post_delete, pre_delete
@@ -2135,6 +2136,9 @@ class Find(
"cached_object_types",
"cached_materials",
]
+ CACHED_HIERARCHY = [
+ "material_types",
+ ]
SERIALIZE_CALL = {
"base_finds_list": "base_finds_list",
"documents_list": "documents_list",
@@ -2505,6 +2509,9 @@ class Find(
db_index=True,
help_text=_("Cached value - do not edit"),
)
+ cached_hierarchy_material_types = ArrayField(
+ models.TextField(), blank=True, default=list
+ )
history = HistoricalRecords(bases=[HistoryModel])
BASKET_MODEL = FindBasket