Django rest framework 在Django Rest Auth中注册前检查OTP

Django rest framework 在Django Rest Auth中注册前检查OTP,django-rest-framework,django-rest-auth,Django Rest Framework,Django Rest Auth,我正在使用Django Rest Auth插件在Django Rest框架中注册和登录。我想在用户注册时检查OTP(唯一密钥)。 我们正在向用户发送基于手机号码的OTP。Django在注册后检查OTP。我想在注册前设置这些条件。 如果条件为真,则应进行注册 class SignupForm(forms.Form): otp_no = forms.CharField(label='OptNo', required=True) def signup(self, request, u

我正在使用Django Rest Auth插件在Django Rest框架中注册和登录。我想在用户注册时检查OTP(唯一密钥)。 我们正在向用户发送基于手机号码的OTP。Django在注册后检查OTP。我想在注册前设置这些条件。 如果条件为真,则应进行注册

class SignupForm(forms.Form):
    otp_no = forms.CharField(label='OptNo', required=True)

    def signup(self, request, user):
        try:
            otpobj = Otp.objects.get(pk=self.cleaned_data['otp_no'])
            if otpobj.phone_number == self.cleaned_data['phone_number']:
                user_number = UserNumber(user=user, phone_number=self.cleaned_data['phone_number'])
                user_number.save()
            else:
                raise forms.ValidationError('Number is not valid')
        except ObjectDoesNotExist:
            raise forms.ValidationError('OTP is not valid')
我在
UserSerializer
中添加了
def create()
def update()
方法,但仍然不起作用。请指导我这个解决方案,并提前表示感谢