【问题标题】:Django rest-auth password reset not workingDjango rest-auth 密码重置不起作用
【发布时间】:2017-07-21 03:01:56
【问题描述】:

我正在使用 Django 为移动应用构建 RESTful API,我使用 django rest-auth 库进行身份验证,但在尝试使用密码重置时出现以下错误:

NoReverseMatch at /auth/password/reset/
Reverse for 'auth_password_reset_confirm' with arguments '(b'OQ', '4nx-
6653c24101b5443f726b')' and keyword arguments '{}' not found. 0 pattern(s) 
tried: []

鉴于我的 url 模式中的这个 sn-p

url(r'^', include('django.contrib.auth.urls')),
url(r'^auth/', include('rest_auth.urls')),
url(r'^auth/registration/', include('rest_auth.registration.urls')),

我尝试了这里提到的一些解决方案(在 sn-p 中添加第一个模式),但仍然有同样的错误。

【问题讨论】:

  • 其他端点是否正常工作?您能否提供有关您提出的请求的更多详细信息,例如它是一个 POST 和一些示例数据?
  • 尝试注释掉第一个 url,它可能会全部捕获。如果没有帮助,请发布更多关于您如何访问 URL 的信息
  • @FBidu 是的,整个 API 运行良好,登录和注册也正常运行。我发布了 rest-auth lib 的文档中列出的有效负载(如果重置密码,只需电子邮件地址)
  • @JahongirRahmonov 我已经添加了它,因为它被提到是一个可行的解决方案,但如果没有它,它仍然无法正常工作。我通过来自应用程序或 Postman 的简单 POST 请求访问它,并且仅使用有效负载中的电子邮件。

标签: django django-rest-framework django-rest-auth


【解决方案1】:

你没有定义那个 url,你可以从 rest-auth 库中查看演示项目,看看它是如何处理 url(和相关模板)的。

https://github.com/Tivix/django-rest-auth/blob/master/demo/demo/urls.py

【讨论】:

    【解决方案2】:

    试试这个: 在 Settings.py 中:确保“app”位于已安装应用的末尾

    然后再试一次

    【讨论】:

    • 安装应用的末尾应该是哪个应用?
    • 否决答案,哪个应用程序以及为什么?
    【解决方案3】:

    此错误表示您尚未定义任何名称为auth_password_reset_confirm 的网址,因此您需要创建一个名称为auth_password_reset_confirm 的网址。

    您需要以这种方式自定义django rest-auth

    在 rest-auth > urls.py

    urlpatterns = [
        ....
        url(r'^password/reset/confirm/(?P<uidb64>[0-9A-Za-z_\-]+)/(?P<token>[0-9A-Za-z]{1,13}-[0-9A-Za-z]{1,20})/$', PasswordResetConfirmView.as_view(),
        name='auth_password_reset_confirm'),
        ....
    ]
    

    在这种情况下,您将name 设置为auth_password_reset_confirm。就我而言,我收到了这个反向 url password_reset_confirm 的错误,所以我把它作为一个名称放在 urls 中。

    但在你的情况下是auth_password_reset_confirm

    【讨论】:

      猜你喜欢
      • 2019-05-25
      • 2020-05-21
      • 1970-01-01
      • 2017-04-07
      • 2018-06-04
      • 2020-01-15
      • 1970-01-01
      • 1970-01-01
      • 2013-09-21
      相关资源
      最近更新 更多