diff options
| author | Étienne Loks <etienne.loks@iggdrasil.net> | 2026-02-11 16:19:18 +0100 |
|---|---|---|
| committer | Étienne Loks <etienne.loks@iggdrasil.net> | 2026-02-12 10:43:18 +0100 |
| commit | be6fc87760c8558f83a4ba6617776e132c1de6c6 (patch) | |
| tree | dbcc984bfd64950eff492d71b028cf06e076a626 /ishtar_common | |
| parent | 9d348ebd98b3405305365b5da36cb3c2b2956198 (diff) | |
| download | Ishtar-be6fc87760c8558f83a4ba6617776e132c1de6c6.tar.bz2 Ishtar-be6fc87760c8558f83a4ba6617776e132c1de6c6.zip | |
🐛 CSV export: fix export of json field when a json field is used as search (refs #6602)
Diffstat (limited to 'ishtar_common')
| -rw-r--r-- | ishtar_common/models_common.py | 2 | ||||
| -rw-r--r-- | ishtar_common/views_item.py | 11 |
2 files changed, 9 insertions, 4 deletions
diff --git a/ishtar_common/models_common.py b/ishtar_common/models_common.py index 4a2881083..a94eadb80 100644 --- a/ishtar_common/models_common.py +++ b/ishtar_common/models_common.py @@ -1005,7 +1005,9 @@ class FullSearch(models.Model): @classmethod def get_default_search_form(cls): # DEFAULT_SEARCH_FORM is used to get the form when exporting tables + # necessary to manage correctly search with json fields if not cls.DEFAULT_SEARCH_FORM: + print(f"**WARNING** DEFAULT_SEARCH_FORM not specified for {cls}") return form = getattr(import_module(cls.DEFAULT_SEARCH_FORM[0]), cls.DEFAULT_SEARCH_FORM[1]) diff --git a/ishtar_common/views_item.py b/ishtar_common/views_item.py index ac2db5b97..3fe525826 100644 --- a/ishtar_common/views_item.py +++ b/ishtar_common/views_item.py @@ -2567,12 +2567,15 @@ def get_item( ) request_keys.update(my_extra_request_keys) + current_search_form = search_form + if not current_search_form and hasattr(model, "get_default_search_form"): + current_search_form = model.get_default_search_form() + # manage search on json fields and excluded fields ishtaruser = request.user.ishtaruser if request else ishtaruser - if search_form: - available, __, excluded_fields, json_fields = search_form.check_custom_form( - ishtaruser - ) + if current_search_form: + available, __, excluded_fields, json_fields = \ + current_search_form.check_custom_form(ishtaruser) # for now no manage on excluded_fields: should we prevent search on # some fields regarding the user concerned? if available: |
