相关疑难解决方法(0)

使用Djoser和Django Rest Framework注册用户时传递其他数据

我正在使用Djoser(https://github.com/sunscrapers/djoser)和Django Rest Framework.我正在使用Djoser提供的默认/ register /端点.现在,我想在注册用户时传递更多信息.比如说推荐代码(看看用户来自哪里).我想我需要在UserManager类的create_user方法中实现这个逻辑.

这是我的MyUserManager:

class MyUserManager(BaseUserManager):
    def create_user(self, name, email, referrer_code="", password=None):
        """
        Creates and saves a User with the given email, date of
        birth and password.
        """
        if not email:
            raise ValueError('Users must have an email address')
        print "referrercode" + referrer_code
        referrer = 0
        if (referrer_code != ""):
            try:
                referrer = MyUser.objects.filter(referral_code=referrer_code).first().id
            except:
                referrer = 0
        user = self.model(
            name=name,
            email=self.normalize_email(email),
            referrer=referrer,
        )

        user.set_password(password)
        user.save(using=self._db)
        return user
Run Code Online (Sandbox Code Playgroud)

referrer_code是我想要作为POST请求的一部分传递的内容.

这是我的MyUser模型:

class MyUser(AbstractBaseUser):
    email = …
Run Code Online (Sandbox Code Playgroud)

python django django-rest-framework

4
推荐指数
1
解决办法
1189
查看次数

标签 统计

django ×1

django-rest-framework ×1

python ×1