DJANGO - Возможная проблема app_name ('password_reset_done' не является допустимой функцией просмотра или именем шаблона.) - PullRequest
0 голосов
/ 29 мая 2019

Я искал в Интернете и нашел решение моей проблемы с Django, так как я не смог найти password_reset_done как представление, и я полностью застрял. Ошибка показана ниже.

enter image description here

У меня были предыдущие проблемы с паролем password_reset_email.html, говоря, что он не может найти его, пока я не поместил «LifeOfReillyApp:» перед паролем password_reset_email в {% url ....%}.

{% load i18n %}{% autoescape off %}
{% blocktrans %}You're receiving this email because you requested a password reset for your user account at {{ site_name }}.{% endblocktrans %}

{% trans "Please go to the following page and choose a new password:" %}
{% block reset_link %}
{{ protocol }}://{{ domain }}{% url 'LifeOfReillyJohnApp:password_reset_confirm' uidb64=uid token=token %}
{% endblock %}
{% trans "Your username, in case you've forgotten:" %} {{ user.get_username }}

{% trans "Thanks for using our site!" %}

{% blocktrans %}The {{ site_name }} team{% endblocktrans %}

{% endautoescape %}

Именно здесь я считаю, что моя проблема проистекает из использования app_name в моем urls.py в моем приложении, что должно быть правильным решением.

Использование исправления в password_reset_email.html только продвигает проблему дальше до password_reset_done.html. Ниже urls.py:

from django.urls import path, include
from django.contrib.auth import views as auth_views
from . import views

app_name = "LifeOfReillyJohnApp"

urlpatterns = [
    path("PassGen/", views.PassGen, name="PassGen"),
    path("FontGen/", views.FontGen, name="FontGen"),
    path("SignUp/", views.SignUp, name="SignUp"),
    path("LogOut/", views.LogOut, name="LogOut"),
    path("LogIn/", views.LogIn, name="LogIn"),
    path('password-reset/',
        auth_views.PasswordResetView.as_view(
            template_name='registration/password_reset.html'
        ),
        name='password_reset'),

    path('password-reset/done/',
         auth_views.PasswordResetDoneView.as_view(
             template_name='registration/password_reset_done.html'
         ),
         name='password_reset_done'),


    path('password-reset-confirm/<uidb64>/<token>/',
         auth_views.PasswordResetConfirmView.as_view(
             template_name='registration/password_reset_confirm.html',
         ),
         name='password_reset_confirm'),

    path('password-reset-complete/',
         auth_views.PasswordResetCompleteView.as_view(
             template_name='registration/password_reset_complete.html'
         ),
         name='password_reset_complete'),

    path("", views.home, name="home"),


]

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

...