Dans mon models.py, je utilisateur ces codes à mesure deux champs:une erreur de « User.add_to_class » pour étendre mon utilisateur, je ne sais pas pourquoi
User.add_to_class('bio', models.TextField(blank=True))
User.add_to_class('about', models.TextField(blank=True))
Mais quand je creat un utilisateur:
user = User.objects.create_user(username=self.cleaned_data['username'], \
email=self.cleaned_data['email'],password=self.cleaned_data['password1'])
il y a une erreur comme ceci:
ProgrammingError at /account/register/
(1110, "Column 'about' specified twice")
Request Method: POST
Request URL: http://127.0.0.1:8000/account/register/
Exception Type: ProgrammingError
Exception Value: (1110, "Column 'about' specified twice")
un je vérifie sql que django creats, je trouve qu'il est très étrange:
'INSERT INTO `auth_user` (`username`, `first_name`, `last_name`, `email`, `password`, `is_staff`, `is_active`, `is_superuser`, `last_login`, `date_joined`, `about`,'bio','about','bio') VALUES (%s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s, %s)'
Il y a deux environ et bio. Mais dans la table Mysql il n'y a qu'un 'environ' et 'bio'. D'autre part, dans ce cas, le models.py sera exécuté deux fois, je ne sais pas.
Je ne sais pas pourquoi.Veuillez m'aider!
Est-ce que 'models.py' est exécuté deux fois? Pourriez-vous garder le code 'User.add_to_class'? –