diff options
author | Étienne Loks <etienne.loks@iggdrasil.net> | 2025-02-06 15:24:37 +0100 |
---|---|---|
committer | Étienne Loks <etienne.loks@iggdrasil.net> | 2025-02-19 14:45:57 +0100 |
commit | 32b4271ea9e7540a7613429563fffde20e57690d (patch) | |
tree | b99b9d116e9c0a64b18fbf3c24d32ed58db6238d /ishtar_common/views_item.py | |
parent | 43e629c861fe5f73d4a0db94c9c49ac9592228c8 (diff) | |
download | Ishtar-32b4271ea9e7540a7613429563fffde20e57690d.tar.bz2 Ishtar-32b4271ea9e7540a7613429563fffde20e57690d.zip |
🐛 more robust filters for sheets (refs #6109)
Diffstat (limited to 'ishtar_common/views_item.py')
-rw-r--r-- | ishtar_common/views_item.py | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/ishtar_common/views_item.py b/ishtar_common/views_item.py index b30a9e525..cecc0318d 100644 --- a/ishtar_common/views_item.py +++ b/ishtar_common/views_item.py @@ -446,9 +446,14 @@ def filter_sheet(ishtar_user, item): keys += base_keys if exclude: for key in keys: + param = getattr(item, key, None) + if hasattr(param, "count"): + # set a key_not_available variable in order to filter on the + # sheet non setable variable such as queryset or properties + setattr(item, key + "_not_available", True) try: setattr(item, key, None) - except TypeError: + except (TypeError, AttributeError): pass return item new_item = type("BaseObject", (object,), {}) |