问题描述
无法找到如何在通过验证的情况下在 seed.py 中创建用户的方法(我的项目中有电子邮件验证,该验证设置为强制性)。用户创建有效,但我想要激活帐户。
我正在使用 django-allauth 包。设置 verificated/is_active = True
没有帮助。
这是我的seed.py
:
def add_arguments(self,parser):
parser.add_argument(
"--create_user",action="store_true",help="Create user",)
def handle(self,*args,**options):
if options["create_user"]:
# Todo: find the way to pass account verification
user = CustomUser.objects.create_user(
first_name="A",last_name="A",email="test@test.com",password="Password123",)
for _ in range(2):
EventFactory.create(
is_checked_by_admin=True,private=False,host=user,event_starts=datetime(1987,8,15,9,51,25),)
EventFactory.create(
is_checked_by_admin=True,)
这是account_manager
:
class CustomUserManager(BaseUserManager):
def create_user(
self,email,first_name,last_name,password,):
if not email:
raise ValueError(_("User must have an email"))
if not password:
raise ValueError(_("User must have a password"))
if not first_name:
raise ValueError(_("User must have a first name"))
if not last_name:
raise ValueError(_("User must have a last name"))
email = self.normalize_email(email)
custom_user = self.model(
email=email,first_name=first_name,last_name=last_name,)
custom_user.set_password(password)
custom_user.save()
return custom_user
感谢您的帮助!
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)