2016-06-28 3 views
-1

djangoテンプレート{%load%}タグが変数をとることは可能ですか? {%load {{filter}}%}ここで、filterはタグセット名の文字列を持つ変数の名前です。しかし、これは私にエラーを与えています:{{'は登録されたタグライブラリではありません。Djangoテンプレート{%load%}は変数をとることができます

このテンプレートファイルは再利用可能なアプリケーションの一部であり、タグセットはこのアプリケーションを使用するアプリケーションによって異なるため、動的に一部のタグセットを読み込みたいとします。前もって感謝します!

+0

カスタムテンプレートタグのドキュメントを読んだことがありますか?https://docs.djangoproject.com/en/1.9/howto/custom-template-tags/ – dmitryro

+0

私は持っていますが、私が直面している問題は、タグセットの名前が分かりません。私は、ビュー呼び出しを介してその名前を取得し、ビューはロードするテンプレートに名前を渡す必要があります。したがって、ビューが実際に文字列 "getattribute"である変数filter_nameを返す場合、{%load {{filter_name}}%}のように{%load getattribute%}に評価します。 – nupsy

+0

your_tag_libraryをアップロードしてから、タグを推測するのではなく、ユースケースに基づいてさまざまなパラメータとフィルタを提供できるカスタムタグを使用します。 {%upload%}は1つ以上のタグを持つ可能性のあるタグライブラリのためのものです。したがって、{%if your_var_from_view%} {{tag | filter}} {%endif%}を使用すると、 – dmitryro

答えて

0
テンプレートで

{% if condition_from_view_1 %} 
     {% upload tag_library1 %} 
{% elif condition_from_view_2 %} 
     {% upload tag_library2 %} 
{% endif %} 

同様に、あなたはタグレベルにチェックを降ろすことができます。

関連する問題