0
我創建了一個自定義標籤,它接受一個參數:過濾定製的Django標籤?
{% panel "most" %}
我會用add
的參數:
{% panel "most"|add:"_people" %}
我預計參數將是「most_people」,而是它是「最」 |補充: 「_人」。看起來,過濾器不會在自定義標籤中調用。如何使他們工作?
我創建了一個自定義標籤,它接受一個參數:過濾定製的Django標籤?
{% panel "most" %}
我會用add
的參數:
{% panel "most"|add:"_people" %}
我預計參數將是「most_people」,而是它是「最」 |補充: 「_人」。看起來,過濾器不會在自定義標籤中調用。如何使他們工作?
如果您使用simple_tag
裝飾器編寫自定義標記,則應該可以對參數使用過濾器。
但是,如果您已經編寫了advanced template tag,那麼您需要做額外的工作才能使"most"|add:"_people"
可以根據需要使用過濾器。
解決辦法之一,就是使用{% with %}
標籤將過濾器的結果分配給變量。
{% with panel_name="most"|add:"_people" %}
{% panel panel_name %}
{% endwith %}