Реверс для url (*) с аргументами ключевого слова не найден
Я ноб в области django rest/django. Я пытаюсь развернуть url
@action(detail=True, methods=['post'], url_path='request-reset-email', url_name='request-reset-email')
def request_reset_password_email(self, request, pk):
...
uid64 = urlsafe_base64_encode(smart_bytes(user.id))
token = PasswordResetTokenGenerator().make_token(user)
relativeLink = reverse('user-password-reset-confirm', kwargs={'uid64' : uid64, 'token': token})
и у меня есть другое пользовательское действие
@action(detail=False, methods=['get'], url_path='password-reset/<uid64>/<token>/', url_name='password-reset-confirm')
def password_reset_confirm(self, request, uid64, token):
pass
а это файл urls
router = DefaultRouter()
router.register('user', UserViewset, basename='user')
urlpatterns = [
path('', include(router.urls)),
path('<int:id>', include(router.urls)),
]
ошибка
NoReverseMatch at /user/2/request-reset-email/
Reverse for 'user-password-reset-confirm' with keyword arguments
'{'uid64': 'Mg', 'token': 'az3s71-eae533db00d974ba7d7fc0dfd5e9e060'}' not found. 4 pattern(s) tried:
['(?P<id>[0-9]+)user/password-reset/<uid64>/<token>\\.(?P<format>[a-z0-9]+)/?$',
'(?P<id>[0-9]+)user/password-reset/<uid64>/<token>//$',
'user/password-reset/<uid64>/<token>\\.(?P<format>[a-z0-9]+)/?$',
'user/password-reset/<uid64>/<token>//$']