【发布时间】:2018-03-25 15:20:36
【问题描述】:
我正在尝试使用 Django 内置的 password_reset 视图,到目前为止,我遵循了一个小教程,但就我而言,而且我发现还有很多其他人的,它不起作用,并且每次我访问特定的 url,它返回:“reverse for 'reset_password' not found. 'reset_password' 不是有效的视图函数或模式名称。”。我寻找了各种解决方案,但唯一真正有效的是将带有 password_reset 和 password_reset_confirm 的 url 移动到主 urls.py,而不是我的子目录中的那个。尽管如此,如果我访问 url “raw”,也就是只输入它而不是通过链接渲染页面等等,它确实可以工作,但是如果我尝试通过一些实际链接访问它,它会返回我得到的相同错误从一开始。
在我的 main/urls.py 中:
url(r'^reset_password/$', password_reset, name='password_reset'),
url(r'^reset_password/done/$', password_reset_done, name='password_reset_done'),
^这个没有任何作用,它只是返回那个错误。我检查了可能的拼写错误或错误的声明,但没关系。
就像我说的,如果我将这两个 url 放入 urls.py 而不是 main/urls.py,它确实有效。但后来我尝试在模板中实现一个链接,如下所示:{% url 'reset_password' %}。但它会返回该错误。
【问题讨论】:
-
我会尝试更具体。最初,我不想在主应用程序 urls.py 中使用这两个 url,而是在我的子目录中的 urls.py 中使用,称为 main。问题是,它不起作用,并且总是会打印该错误消息。在 main/urls.py 中使用它们确实是我的第一次尝试。然后我发现如果我将这两个 url 放在我的主应用程序 urls.py 中,它确实有效。我的主要问题是我不能在 main/urls.py 中使用它们。