スポンサーリンク

コードが書ける!数式が書ける!AAが書ける!スタンプが貼れる!

無料の匿名掲示板型SNS「このはちゃんねる

新規会員募集中!

【Django】フォームのChoiceFieldの表示テキストをフォーム作成時に指定できるようにする

119, 2019-08-21

ChoiceFieldのテキスト部分(ドロップダウンメニューで目に見える名前)をフォーム作成時に指定する方法。

class MyForm(forms.Form):

    CHOICE_NULL = (0)
    CHOICE_1 = (1)
    CHOICES = (
        (CHOICE_NULL, '----'),
        (CHOICE_1, None),
    )

    mychoice = forms.ChoiceField(choices=CHOICES)

    def __init__(self, *args, **kargs):
        super().__init__(*args, **kargs)

        initial = kargs.get('initial', None)
        if not initial:
            return

        arg = initial.get('arg', None)
        if not arg:
            return

        self.fields['mychoice'].choices = (
            (MyForm.CHOICE_NULL, '----'),
            (MyForm.CHOICE_1, arg),
        )
def myview(req):
    form = MyForm(initial={
        'arg': '私のテキスト',
    })

投稿者名です。64字以内で入力してください。

必要な場合はEメールアドレスを入力してください(全体に公開されます)。

投稿する内容です。

スポンサーリンク

スポンサーリンク

スポンサーリンク

スポンサーリンク