Django バージョン: 4.0.2 Django-Registration バージョン: 0.8 アプリ名: userAccounts
問題: ユーザー モデルを拡張して、professor というユーザー タイプを作成しようとしています。登録プロセスを完了することができます。問題は、ユーザーのみが DB に保存され、教授テーブルが空のままであることです。したがって、保存方法に問題がある可能性があると思います。何が問題なのかについての手がかりはありますか?
設定.PY
AUTH_PROFILE_MODULE = "userAccounts.Professor"
MODELS.PY - ここでは、ユーザーとサンプル フィールドから拡張するモデルを作成します。
from django.db import models
from django.contrib.auth.models import User
class Professor(models.Model):
  user = models.ForeignKey(User, unique=True)
  exampleField = models.CharField(max_length=100)
FORMS.PY - ユーザーが保存されると、professor テーブルに new_profile が保存されます。
from django import forms
from registration.forms import RegistrationForm
from models import Professor
from registration.models import RegistrationProfile
class CustomRegistrationForm(RegistrationForm):
  exampleField = forms.CharField()
  def save(self, profile_callback=None):
    new_user = RegistrationProfile.objects.create_inactive_user(
        username=self.cleaned_data['username'],
        password=self.cleaned_data['password1'],
        email = self.cleaned_data['email'])
    new_professor = Professor(
        user=new_user, 
        exampleField=self.cleaned_data['exampleField'])
    new_professor.save()
    return new_user
注:私はこの投稿をフォローしています:プロファイルのフィールドを含む登録フォーム