J'ai essayé de créer un formulaire d'inscription personnalisé à l'aide d'un modèle utilisateur étendu dans django. L'un des champs personnalisés que j'ai essayé d'ajouter est un type d'utilisateur qui ne peut être que "Employee" ou "Admin".Impossible d'ajouter un champ de formulaire de choix dans usercreateform personnalisé
Ma classe signUpForm ressemble à ceci
from .models import EMPLOYEE_TYPE_CHOICES
class SignUpForm(UserCreationForm):
usertype = forms.CharField(
max_length=10,
choices=EMPLOYEE_TYPE_CHOICES,
)
userID = forms.CharField(label="User ID")
class Meta:
model = User
fields = ('username', 'first_name', 'last_name', 'email', 'password1', 'password2', 'userID', 'usertype')
EMPLOYEE_TYPE_CHOICES vient de mon models.py qui ressemblent à ce
EMPLOYEE_TYPE_CHOICES = (
('admin', 'Admin'),
('employee', 'Employee'),
)
class Profile(models.Model):
user = models.OneToOneField(User, on_delete=models.CASCADE)
ADMIN = 'Admin'
EMPLOYEE = 'Employee'
EMPLOYEE_TYPE_CHOICES = (
(ADMIN, 'Admin'),
(EMPLOYEE, 'Employee'),
)
usertype = models.CharField(
max_length=10,
choices=EMPLOYEE_TYPE_CHOICES,
)
userID = models.CharField(
max_length=10,
)
Lors de l'exécution du serveur, je reçois l'erreur TypeError: initialisation() a obtenu un argument mot-clé inattendu 'choix'
Y a-t-il une méthamphétamine différente? od pour ajouter les choix à mon champ de formulaire?