2016-05-01 10 views
0

を一覧表示するには、変数を変換:時々私は、単一の聖歌をDjangoテンプレート - 私はテンプレートに渡しています配列としては、例えばいる

{% include 'chant_box.html' with chants=all_chants only %} 

を持っており、それがビューからの配列として渡ししても意味がありません。 (「実用的な」理由は別として)。私は、このテンプレートに渡したいと私はそれが最初のリストに変換する必要がある、のようなもの:

{% include 'chant_box.html' with chants=[single_chant] only %} 

しかし、それは(リストに包む、動作しない)またはmake_listフィルタが動作しませんか(文字列表現の文字のリストを作る)。これを行う標準的な方法はありますか?私はカスタムフィルターを作ることができると知っていますが、私がしなければ本当にやりたくありません。

+0

シングルトンのリストは、あなたが引用した '実用的な理由'のために、ここではたくさんの意味があります。なぜあなたは複雑なことをしたいのですか? – schwobaseggl

+0

また、現在のテンプレートに "single_chant"変数が必要なので、シングルトンリストでラップすると複雑になります。 –

+0

あなたのインクルードされたテンプレートに 'single_chant'を追加して渡すこともできます。' chants'と 'single_chant'の' chants'と 'single_chant'部分をそれぞれラップします。 – schwobaseggl

答えて

0

私は、単純なカスタムフィルタを作成することになった。それを行うには

@register.filter(name='singleton_list') 
def image_data(object): 
    return [object] 

その他かなりOKな方法は、条件とあまりにも多くのduplicitiesを避けるために、テンプレートの継承を使用することです。

関連する問題