如何在allauth中通过电子邮件验证帐户,同时播种数据库

问题描述

无法找到如何在通过验证的情况下在 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 (将#修改为@)