Django filter in the tag

Post date: Jul 7, 2010 9:36:20 AM

Або як фільтрувати параметри які передаються у теґ.

Тому, що просто написати щось на зразок:

{% tag_name arg1 arg2|filter_name:f_arg1 arg3 %}

Не можна.

Але у джанго є такий собі прикольний теґ {% filter %} за допомогою якого все це можна реалізувати.

Ось код:

{% filter filter_name1:f_arg1|filter_name2:f_arg2 %}

{% tag_name arg1 arg2 %}

{% endfilter %}

Є щоправда одне: така конструкція викликає фільтр для кожного аргументу тега. Тому у фільтрі необхідно передбачити перевірку аби він філтрував лише необхідні аргументи а інші повертав як є.