2017-02-07 4 views
0

多くのchoicesフィールドを持つ単純なオーダーフォームを作成しています。それぞれの選択フィールドには多くのオプションがあります。フォームはうまく機能し、感謝のページにリダイレクトされ、コンテキスト、請求書をStripe経由でリダイレクトし、通知メールを管理者に送信します。しかし、私が新しい注文で電子メールを受け取ったとき、私はさまざまな選択肢のフィールドに1ドルの金額を手に入れましたが、冗長ラベルなしでそれがどのようなものであるのか分かりません。以下は、私の選択フィールドの1つと、返された値の例です。ありがとうございました。Django Choicesフォームフィールドの詳細名をコンテキストを表示に渡す

HERESにサンプルの選択フィールド

MERCHANDISE_ORDER = (
    ('10000', 'Flag with 5X7 Certificate'), 
    ('2000', 'MSMA Hat'), 
    ('500', 'Plaque Certificate'), 
    ('500', 'Flag and Plaque Certificate'), 
) 

テンプレートタグ

... 
<strong>Merchandise Order:</strong> ${{ merchandise_order }} <br> 
... 

私のページやメール

ありがとう
... 
Merchandise Order: $5 
... 
で返された値

ご覧のとおり、4つの選択肢がありますので、返される値がMerchandise Order: Plaque Certificate - $5かそれと似て冗長なものを得ることができれば素晴らしいと思います。

私はモデルのフォームを使用していないので、私はスタイリングをコントロールすることができます。私は{{ form.merchandise_order }}などで手動でテンプレートにフォームフィールドを追加しています。ありがとうございます。

+0

[mcve]を作成してください。何らかの種類のフォームを使用している必要があります。質問の最後の行は機能しません – Sayse

答えて

1

モデル名がsome_fieldのようなフィールドがあります。

some_field = models.CharField(max_length=5, choices=MERCHANDISE_ORDER) 

このような選択肢から冗長な名前を得ることができます。 some_field _Display()

queryset.get_some_field_display() 

とテンプレートでのGET_。

{{queryset.get_some_field_display}} 

あなたはhereからドキュメントをチェックすることができます。

関連する問題