diff options
author | Étienne Loks <etienne.loks@iggdrasil.net> | 2020-09-09 12:25:51 +0200 |
---|---|---|
committer | Étienne Loks <etienne.loks@iggdrasil.net> | 2021-02-28 12:15:20 +0100 |
commit | eb44d76df31c2ba612b4c1fb41bdf43d01fa7e22 (patch) | |
tree | 0eaed830f776d8d6dee3af1776e701bef1a1f27d /archaeological_finds/models_finds.py | |
parent | 5a0c6185ac0e8facc3386d48d056cc537617271c (diff) | |
download | Ishtar-eb44d76df31c2ba612b4c1fb41bdf43d01fa7e22.tar.bz2 Ishtar-eb44d76df31c2ba612b4c1fb41bdf43d01fa7e22.zip |
Find search: hierarchical search by container
Diffstat (limited to 'archaeological_finds/models_finds.py')
-rw-r--r-- | archaeological_finds/models_finds.py | 42 |
1 files changed, 15 insertions, 27 deletions
diff --git a/archaeological_finds/models_finds.py b/archaeological_finds/models_finds.py index 3adaf90dd..b893951b7 100644 --- a/archaeological_finds/models_finds.py +++ b/archaeological_finds/models_finds.py @@ -938,8 +938,6 @@ class Find(BulkUpdatedItem, ValueGetter, DocumentItem, BaseHistorizedItem, 'documents__image__isnull': 'documents__image__isnull', 'container__location': 'container__location__pk', 'container__responsible': 'container__responsible__pk', - 'container__index': 'container__index', - 'container__reference': 'container__reference', } for table in (TABLE_COLS, TABLE_COLS_FOR_OPE): for key in table: @@ -1055,38 +1053,22 @@ class Find(BulkUpdatedItem, ValueGetter, DocumentItem, BaseHistorizedItem, SearchAltName( pgettext_lazy("key for text search", "checked"), 'checked_type__label__iexact'), + 'container_ref': + SearchAltName( + pgettext_lazy("key for text search", "container"), + 'container_ref__cached_label__iexact'), 'container_ref__location': SearchAltName( pgettext_lazy("key for text search", "location"), 'container_ref__location__name__iexact'), - 'container_ref__responsible': - SearchAltName( - pgettext_lazy("key for text search", "warehouse"), - 'container_ref__responsible__name__iexact'), - 'container_ref__index': - SearchAltName( - pgettext_lazy("key for text search", "container-index"), - 'container_ref__index'), - 'container_ref__reference': - SearchAltName( - pgettext_lazy("key for text search", "container-ref"), - 'container_ref__reference__iexact'), 'container__location': SearchAltName( pgettext_lazy("key for text search", "current-location"), 'container__location__name__iexact'), - 'container__responsible': - SearchAltName( - pgettext_lazy("key for text search", "current-warehouse"), - 'container__responsible__name__iexact'), - 'container__index': + 'container': SearchAltName( - pgettext_lazy("key for text search", "current-container-index"), - 'container__index'), - 'container__reference': - SearchAltName( - pgettext_lazy("key for text search", "current-container-ref"), - 'container__reference__iexact'), + pgettext_lazy("key for text search", "current-container"), + 'container__cached_label__iexact'), 'basket': SearchAltName( pgettext_lazy("key for text search", "basket"), @@ -1380,6 +1362,7 @@ class Find(BulkUpdatedItem, ValueGetter, DocumentItem, BaseHistorizedItem, ALT_NAMES.update(DocumentItem.ALT_NAMES) ALT_NAMES.update(Dating.ASSOCIATED_ALT_NAMES) + """ DYNAMIC_REQUESTS = { 'current_division': DynamicRequest( label=_("Division current -"), @@ -1391,7 +1374,7 @@ class Find(BulkUpdatedItem, ValueGetter, DocumentItem, BaseHistorizedItem, search_query='container__division__reference__iexact' ), 'reference_division': DynamicRequest( - label=_(u"Division reference -"), + label=_("Division reference -"), app_name='archaeological_warehouse', model_name='WarehouseDivision', form_key='reference_division', search_key=pgettext_lazy("key for text search", @@ -1400,6 +1383,7 @@ class Find(BulkUpdatedItem, ValueGetter, DocumentItem, BaseHistorizedItem, search_query='container_ref__division__reference__iexact' ), } + """ PARENT_SEARCH_VECTORS = ['base_finds'] BASE_SEARCH_VECTORS = [ @@ -1677,7 +1661,7 @@ class Find(BulkUpdatedItem, ValueGetter, DocumentItem, BaseHistorizedItem, @property def short_class_name(self): - return _(u"FIND") + return _("FIND") def __str__(self): return self.cached_label or u"" @@ -1698,6 +1682,10 @@ class Find(BulkUpdatedItem, ValueGetter, DocumentItem, BaseHistorizedItem, 'excavation_id').order_by('pk').all() if base_find['excavation_id']]) + @classmethod + def hierarchic_fields(cls): + return ["container", "container_ref"] + @property def materials(self): return " ; ".join([str(material) |