Что не так с функцией почитания? - PullRequest
0 голосов
/ 24 мая 2019

Django выдает мне функцию NoReverseMatch, но я не могу найти причину.

Я проверил, правильно ли я использую функцию реверса, и кажется, что это так.Я также думаю, что это не пользовательские конвертеры, которые я создал, потому что он генерирует исключение NoReverseMatch.

my forms.py:

    #some link creation function
    link = reverse("activate", 
        kwargs={"key":key, "usermail":self.cleaned_data['email']}
        )
    #sending the link to a user

root urls.py

urlpatterns = [
    path('admin/', admin.site.urls),
    path('accounts/', include('accounts.urls')),
    path('accounts/', include('django.contrib.auth.urls')),
    path('', TemplateView.as_view(template_name='home.html'), name='home'),
]

accounts.urls.py

    path('activate/<key:user_key>/<mail:usermail>', 
        views.activate, 
        name="activate"
        ),
]

Я просто ожидаюэто создать этот замечательный кусок ссылки, и я не могу найти то, что я делаю неправильно.Может быть, я смотрю в неправильном месте, может быть, это ошибка интеграции, я не знаю.Любая помощь приветствуется.

edit: добавлен root urls.py

1 Ответ

0 голосов
/ 24 мая 2019

Вы должны использовать пространство имен , в вашем URL включите

path('accounts/', include('accounts.urls', namespace='accounts')),

и в вашем forms.py

link = reverse("accounts:activate", 
        kwargs={"user_key":key, "usermail":self.cleaned_data['email']}
        )
...