2017-06-25 10 views
0

:私のテンプレートでDjangoの表示値Iは、例えば、ジャンゴのマニュアルを取る場合

from django import forms 

FAVORITE_COLORS_CHOICES = (
    ('blue', 'Blue'), 
    ('green', 'Green'), 
    ('black', 'Black'), 
) 

class SimpleForm(forms.Form): 
    favorite_colors = forms.MultipleChoiceField(
     required=False, 
     widget=forms.CheckboxSelectMultiple, 
     choices=FAVORITE_COLORS_CHOICES, 
    ) 

は、私は、チェックボックスの値を表示したいです。このような 何か:

{% for item in favorite_colors %} 
    {{value_of_checkbox}} {{item}} 
{% endfor %} 

私が欲しい{{value_of_checkbox}}リターン "黒"、 "青" "緑" と

それで{{item}}リターン "青"、 "緑" と "ブラック"

これを行う方法はありますか?

おかげ

答えて

2
{% for item in favorite_colors %} 
    {{get_item_display}} {{item}} 
{% endfor %} 

は、それはあなたがそれを手動でレンダリングする必要はありません

+0

ありがとうちょうどあなたのテンプレートでは、このようにそれを使用しますあなたの投稿は役に立ちました – GrandGTO

+0

あなたは歓迎してくれる、喜んで助けてください。 :) – Exprator

-1

を助け、この希望をしてみてください。あなたは、このセクションの追加のCSSクラスが必要な場合は、次のように、あなたのforms.pyの内側に、フォームのウィジェットでそれらを追加し、

{{ favorite_colors }} 

:私は、

... 
widget=forms.CheckboxSelectMultiple(atts={'css_class': 'a_value'}) 
... 
+0

何らかの理由で、私は手動で表示する必要があります。 – GrandGTO

+1

では、カスタムフィルタを使用できます。これは、forloop内の各インスタンスを呼び出す必要があります。 –

+0

あなたは正しいです。ありがとう – GrandGTO

関連する問題