Ответ 1
Я сделал это:
new_user = User.objects.create_user(username, email, password)
new_user.is_active = False
new_user.first_name = first_name
new_user.last_name = last_name
new_user.save()
Я использую Django-Registration, и форма имеет только 3 поля (имя пользователя, адрес электронной почты, пароль и повторный пароль), но почему я не могу добавить фамилию и имя?
В Форме все нормально, но User Model просто принимает 3 аргумента:
new_user = User.objects.create_user(username, email, password)
но почему я не могу этого сделать:
new_user = User.objects.create_user(username, email, password, first_name ,last_name)
Документация Django ничего не говорит о 3 аргументах; все учебные пособия в сети просто используют 3 аргумента...
Почему?? Или как я буду использовать имя и фамилию?
Я сделал это:
new_user = User.objects.create_user(username, email, password)
new_user.is_active = False
new_user.first_name = first_name
new_user.last_name = last_name
new_user.save()
Я знаю, что вы нашли способ, но этот способ ниже может также вас заинтересовать.
Это связано с тем, что для этого требуются аргументы ключевых слов (которые будут переданы методу User __init__
).
https://docs.djangoproject.com/en/1.6/ref/contrib/auth/#manager-methods
User.objects.create_user("user1", "[email protected]", "pwd", first_name="First", last_name="Last")