Django Rest Framework djoser激活问题

问题描述

我知道有很多类似此问题的问题,但是我确实需要您的帮助。我正在尝试通过电子邮件验证来激活帐户,但是我无法激活该帐户,而我正在发送的链接并未激活该帐户。

urlpatterns = [
path('admin/',admin.site.urls),path('auth/',include('authapp.urls'))]

这是我的主要网址。我在authapp中写了这些网址。

urlpatterns = [
path('',include('djoser.urls')),path('',include('djoser.urls.authtoken')),path('activation/<str:uid>/<str:token>/',UserActivationView.as_view()),]

我的设置如下:

 DJOSER = {
'LOGIN_FIELD':'email','USER_CREATE_PASSWORD_RETYPE':True,'SERIALIZERS':{
    'user_create':'authapp.serializer.UserCreateSerializer','user': 'authapp.serializer.UserCreateSerializer',},"ACTIVATION_URL": 'auth/request_activate/{uid}/{token}',"SEND_ACTIVATION_EMAIL": True,}

这是我的view.py:

from rest_framework.response import Response
from rest_framework.views import APIView

import requests


    class UserActivationView(APIView):
        def get (self,request,uid,token):
            protocol = 'https://' if request.is_secure() else 'http://'
            web_url = protocol + request.get_host()
            post_url = web_url + "/auth/users/activation/"
            post_data = {'uid': uid,'token': token}
            result = requests.post(post_url,data = post_data)
            content = result.text()
            return Response(content)

我几乎尝试了所有解决方案,但是没有用。希望您能帮助我。谢谢。

解决方法

"ACTIVATION_URL": 'auth/activation/{uid}/{token}',

这是正确的形式。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...