0

これは私のフォームです。保存すると、ユーザー モデルにのみ保存されますが、データベースのクライアント モデルには保存されません。単純なものが欠けている必要がありますが、わかりません。以下はフォームとクライアントモデルです

class RegisterForm(UserCreationForm):
    email = forms.EmailField(label="Email")
    fullname = forms.CharField(label="Full name")
    type_choice= ( ('Customer','Customer'),('Supplier','Supplier'), )
    type=forms.ChoiceField(choices=type_choice)
    gender_choice=( ('Male','Male'), ('Female','Female'), )
    gender=forms.ChoiceField(choices=gender_choice)
    address=forms.CharField(label="Address",initial="Nothing")
    phone_number=forms.IntegerField()

    class Meta:
        model= User
        fields = ("username","fullname","email","type","gender","address","phone_number")

    def save(self, commit=True):
        user = super(RegisterForm, self).save(commit=False)

        first_name, last_name = self.cleaned_data["fullname"].split()
        user.first_name = first_name
        user.last_name = last_name
        user.email = self.cleaned_data["email"]
        user.type=self.cleaned_data["type"]

        user.gender=self.cleaned_data["gender"]
        user.address=self.cleaned_data["address"]
        user.phone_number=self.cleaned_data["phone_number"]
        client=    Client(Client_ID=3,Client_FirstName=first_name,Client_PhoneNumber=user.phone_number)

        if commit:
            user.save()
            client.save()
        return user,client

これはクライアントモデルです

 class Client(models.Model):
     Client_ID= models.IntegerField(primary_key=True)    
     Client_FirstName=models.CharField(max_length=30)
     Client_LastName=models.CharField(max_length=30)
     Client_Gender=models.CharField(max_length=30)
     Client_PhoneNumber=models.IntegerField()
     Client_Address=models.CharField(max_length=100)
     Client_CreditRating=models.FloatField()

edit : このに従って、テーブルに新しいエントリを挿入しています

4

0 に答える 0