-1

私は Django と Python を初めて使用するので、1 つのクラスでモデルとフォームを取得する方法をお尋ねしたいと思います。ラジオ ボタン、EmailField、DateTimeField を使用したいので、実際には両方 (モデルとフォーム) が必要です。

class Post(models.Model):

    BOOL_CHOICES = ((True, 'male'), (False, 'female'))

    name= models.CharField(max_length=255)
    gender= models.BooleanField(choices=BOOL_CHOICES)

もちろん、モデルとフォームを使用する場合、クラス Post(models.Model) を作成することはできませんが、ビューで両方を表示するにはどうすればよいかわかりません。

前もって感謝します

4

1 に答える 1

0

モデルでこれを行う必要があると考える理由がわかりません。モデルのフォーム表現をカスタマイズする場合は、カスタム モデルフォームを定義し、関連するフィールドをオーバーライドするだけです。

class PostForm(forms.ModelForm):
    gender = forms.TypedChoiceField(choices=BOOL_CHOICES, widget=RadioSelect,
                                    coerce=bool)
    class Meta:
        model = Post
于 2013-05-08T08:16:10.613 に答える