diff options
author | Étienne Loks <etienne.loks@iggdrasil.net> | 2021-10-18 12:11:10 +0200 |
---|---|---|
committer | Étienne Loks <etienne.loks@iggdrasil.net> | 2021-10-18 12:11:10 +0200 |
commit | cba7cfcb6cab18bcf738dfa7effd6656371cb3f7 (patch) | |
tree | f75751af60131cc704270c0b4dc3c52e8957f6a4 /ishtar_common/utils.py | |
parent | 8f97641c8c34d141b5910331c2db17a28c3968d1 (diff) | |
download | Ishtar-cba7cfcb6cab18bcf738dfa7effd6656371cb3f7.tar.bz2 Ishtar-cba7cfcb6cab18bcf738dfa7effd6656371cb3f7.zip |
ID generation: fix custom filters for jinja format
Diffstat (limited to 'ishtar_common/utils.py')
-rw-r--r-- | ishtar_common/utils.py | 24 |
1 files changed, 12 insertions, 12 deletions
diff --git a/ishtar_common/utils.py b/ishtar_common/utils.py index ed183e4d1..e6283ae5e 100644 --- a/ishtar_common/utils.py +++ b/ishtar_common/utils.py @@ -2002,18 +2002,18 @@ def get_generated_id(key, item): for key in set(key_list): _update_gen_id_dct(item, dct, key) tpl = Template(formula) - return tpl.render(dct) - - for fkey in PARSE_FORMULA.findall(formula): - filtered = fkey.split("|") - initial_key = fkey[:] - fkey = filtered[0] - filters = [] - for filtr in filtered[1:]: - if filtr in FORMULA_FILTERS: - filters.append(FORMULA_FILTERS[filtr]) - _update_gen_id_dct(item, dct, initial_key, fkey, filters=filters) - values = formula.format(**dct).split("||") + values = tpl.render(dct).split("||") + else: + for fkey in PARSE_FORMULA.findall(formula): + filtered = fkey.split("|") + initial_key = fkey[:] + fkey = filtered[0] + filters = [] + for filtr in filtered[1:]: + if filtr in FORMULA_FILTERS: + filters.append(FORMULA_FILTERS[filtr]) + _update_gen_id_dct(item, dct, initial_key, fkey, filters=filters) + values = formula.format(**dct).split("||") value = values[0] for filtr in values[1:]: if filtr not in FORMULA_FILTERS: |