3

path在项目中使用urls.py,并re_path在应用程序中使用urls.py,我得到了NoReverseMatch错误,我的项目urls.py

from django.contrib import admin
from django.urls import path, include, re_path

urlpatterns = [
    path('user/', include('user.urls', namespace='user'))
]

我的应用程序urls.py

urlpatterns = [
    re_path('activate/(?P<uidb64>[0-9A-Za-z_\-]+)/(?P<token>[0-9A-Za-z]{1,13}-[0-9A-Za-z]{1,20})/',
            views.activate_account, name='activate'),
]

我无法获得正确的网址,错误消息:

django.urls.exceptions.NoReverseMatch: Reverse for 'activate' with keyword arguments '{'uidb64': b'Mjc', 'token': '4tv-d4250012f57297ad82a6'}' not found. 1 pattern(s) tried: ['user\\/activate/(?P<uidb64>[0-9A-Za-z_\\-]+)/(?P<token>[0-9A-Za-z]{1,13}-[0-9A-Za-z]{1,20})/']
4

1 回答 1

2

好吧,您需要在将 uuid 发送到 url 之前对其进行解码

喜欢uuid.decode()

于 2018-02-20T09:55:02.267 回答