私はdjangoのユーザーモデルの拡張の登録フォームを作成しようとしています。それは2つの関係を持ち、1つはUser
とAddress
です。フォームには、User
,UserDetails
、Address
のすべてのフィールドが必要です。しかし、私は正しい見方と形を得るのに苦労しています。 UserDetails
のModelForm
をFormView
と組み合わせると、User
とAddress
のフィールドは追加されません。Djangoの1対1の関係を1つの形式で
class User(AbstractBaseUser, PermissionMixin):
email = models.EmailField(unique=True)
class UserDetails(model.Model):
date_of_birth = models.DateField()
user = models.ForeignKey(User, on_delete=models.CASCADE)
address = models.OneToOneField(Address, on_delete=models.CASCADE)
class Address(model.Model):
field = models.CharField(max_length=100)
field2 = models.CharField(max_length=100)
フォームとこのようになります表示:
class UserRegistrationForm(ModelForm):
class Meta:
model = Orchestra
fields = '__all__'
class UserRegistrationView(FormView):
form_class = UserRegistrationForm
template_name = 'users/register.html'
<form action="" method="post">
{% csrf_token %}
{{ form.as_table }}
<input type="submit" value="submit">
</form>
あなたのビューとフォームを投稿し、あなたがしたいことを正確に説明してください。「正しいビューとフォームを得るために苦労しています」は十分ではありません。 –
私はビューとフォームを追加しました。これは私にcharfieldフィールドの代わりにユーザーのためのちょうど外国キー選択フィールドを与える – user6827