diff options
author | Étienne Loks <etienne.loks@iggdrasil.net> | 2020-12-01 13:33:21 +0100 |
---|---|---|
committer | Étienne Loks <etienne.loks@iggdrasil.net> | 2021-02-28 12:15:21 +0100 |
commit | dfad3d4b9d7779b5fcd125260021d9f008a68a4f (patch) | |
tree | f828418edadbf957db52121c13575ed7cc3e068c /archaeological_finds | |
parent | fc3f77b2db29391ce1340c535a02b7a32583caa7 (diff) | |
download | Ishtar-dfad3d4b9d7779b5fcd125260021d9f008a68a4f.tar.bz2 Ishtar-dfad3d4b9d7779b5fcd125260021d9f008a68a4f.zip |
Context records: show find inside related context records
Diffstat (limited to 'archaeological_finds')
-rw-r--r-- | archaeological_finds/models_finds.py | 26 | ||||
-rw-r--r-- | archaeological_finds/urls.py | 4 | ||||
-rw-r--r-- | archaeological_finds/views.py | 11 |
3 files changed, 36 insertions, 5 deletions
diff --git a/archaeological_finds/models_finds.py b/archaeological_finds/models_finds.py index 9b1f43cb6..6bb8d042e 100644 --- a/archaeological_finds/models_finds.py +++ b/archaeological_finds/models_finds.py @@ -810,17 +810,31 @@ class Find(BulkUpdatedItem, ValueGetter, DocumentItem, BaseHistorizedItem, 'description', 'base_finds__context_record__town__name', 'base_finds__context_record__parcel', ] + TABLE_COLS_FOR_CR = [ + 'base_finds__cache_short_id', + 'base_finds__cache_complete_id', + 'previous_id', 'label', + 'base_finds__context_record__label', + 'cached_materials', + 'cached_periods', + 'find_number', + 'cached_object_types', + 'container__cached_label', + 'container_ref__cached_label', + 'description', + 'base_finds__context_record__town__name', + 'base_finds__context_record__parcel', ] NEW_QUERY_ENGINE = True COL_LABELS = { - 'base_finds__context_record__label': _(u"Context record"), - 'base_finds__cache_short_id': _(u"Base find - Short ID"), - 'base_finds__cache_complete_id': _(u"Base find - Complete ID"), + 'base_finds__context_record__label': _("Context record"), + 'base_finds__cache_short_id': _("Base find - Short ID"), + 'base_finds__cache_complete_id': _("Base find - Complete ID"), 'base_finds__context_record__operation__code_patriarche': _( - u"Operation (code)" + "Operation (code)" ), 'base_finds__context_record__town__name': _(u"Town"), 'base_finds__context_record__operation__common_name': _( - u"Operation (name)" + "Operation (name)" ), 'base_finds__context_record__archaeological_site__name': IshtarSiteProfile.get_default_site_label, @@ -917,6 +931,8 @@ class Find(BulkUpdatedItem, ValueGetter, DocumentItem, BaseHistorizedItem, ] BASE_REQUEST = {'downstream_treatment__isnull': True} EXTRA_REQUEST_KEYS = { + 'all_base_finds__context_record': + 'base_finds__context_record__context_record_tree_parent__cr_parent_id', 'base_finds__context_record': 'base_finds__context_record__pk', 'base_finds__context_record__archaeological_site': diff --git a/archaeological_finds/urls.py b/archaeological_finds/urls.py index bab3fc6b4..7bf85d9a4 100644 --- a/archaeological_finds/urls.py +++ b/archaeological_finds/urls.py @@ -265,6 +265,10 @@ urlpatterns = [ name='get-own-find-for-ope', kwargs={'force_own': True}), url(r'get-find-for-ope/(?P<type>.+)?$', views.get_find_for_ope, name='get-find-for-ope'), + url(r'get-find-for-cr/cr/(?P<type>.+)?$', views.get_find_for_cr, + name='get-own-find-for-cr', kwargs={'force_own': True}), + url(r'get-find-for-cr/(?P<type>.+)?$', views.get_find_for_cr, + name='get-find-for-cr'), url(r'get-find-for-treatment/own/(?P<type>.+)?$', views.get_find_for_treatment, name='get-own-find-for-treatment', kwargs={'force_own': True}), diff --git a/archaeological_finds/views.py b/archaeological_finds/views.py index c843f02d2..4e4103224 100644 --- a/archaeological_finds/views.py +++ b/archaeological_finds/views.py @@ -66,6 +66,13 @@ def get_table_cols_for_ope(): return settings.TABLE_COLS[tb_key] +def get_table_cols_for_cr(): + tb_key = (models.Find.SLUG, "TABLE_COLS_FOR_CR") + if tb_key not in settings.TABLE_COLS: + return models.Find.TABLE_COLS_FOR_CR + return settings.TABLE_COLS[tb_key] + + def get_table_cols_for_container(): table_cols = models.Find.TABLE_COLS tb_key = ("find", 'TABLE_COLS') @@ -77,6 +84,10 @@ def get_table_cols_for_container(): get_find_for_ope = get_item(models.Find, 'get_find', 'find', own_table_cols=get_table_cols_for_ope()) + +get_find_for_cr = get_item(models.Find, 'get_find', 'find', + own_table_cols=get_table_cols_for_cr()) + get_find_for_treatment = get_item( models.Find, 'get_find', 'find', own_table_cols=get_table_cols_for_ope(), base_request={}) |