django-graphql-auth - отличный пакет, но в документации мало говорится об ассоциации моделей с пользовательской моделью.
Я ищу возможность использовать этот пакет с настраиваемой мутацией регистра для обоих типов пользователей: заявитель и работодатель.
class User(AbstractUser):
email = models.EmailField(blank=False,
max_length=255,
verbose_name="email address")
is_applicant = models.BooleanField(default=False)
is_employer = models.BooleanField(default=False)
USERNAME_FIELD = "username"
EMAIL_FIELD = "email"
class Applicant(models.Model):
user = models.OneToOneField(
User,
on_delete=models.CASCADE,
primary_key=True,
)
fullname = models.CharField(max_length=255, null=True)
class Employer(models.Model):
user = models.OneToOneField(
User,
on_delete=models.CASCADE,
primary_key=True,
)
company_name = models.CharField(max_length=225, null=True)
Цель мутации:
mutation {
registerApplicant(
input: {
email: "[email protected]",
username: "new_applicant",
password1: "createsuperpassword",
password2: "createsuperpassword",
isApplicant: true,
applicant {
fullname: "New Applicant"
}
}
) {
success,
errors,
token,
refreshToken
}
}
mutation {
registerEmployer(
input: {
email: "[email protected]",
username: "new_employer",
password1: "createsuperpassword",
password2: "createsuperpassword",
isEmployer: true,
employer {
fullname: "New Employer"
}
}
) {
success,
errors,
token,
refreshToken
}
}