gpt4 book ai didi

python - django 自定义模板未呈现 password_change_form.html

转载 作者:行者123 更新时间:2023-12-05 03:57:27 25 4
gpt4 key购买 nike

我有一个在网站上自定义格式的 password_change_form.html。我正在用我的模板覆盖 Django 默认模板。但是,它没有呈现我的模板。它只是呈现默认模板,如下所示。

enter image description here

我已经创建了一个自定义格式的模板

base.html

<div class="dropdown-menu dropdown-menu-right" aria-labelledby="navbarDropdown">
<a class="dropdown-item" href="{% url 'password_change' %}">Change password</a>
<div class="dropdown-divider"></div>

password_change_form.html

{% extends 'home/base.html' %}

{% block body %}
<h2>
Change password
</h2>
<form method="post">
{% csrf_token %}
{{ form.as_p }}
<button type="submit" class="btn btn-primary">Change password</button>
</form>
{% endblock %}

urls.py

from django.contrib import admin
from django.urls import path, include
from Shopping.cart import urls


urlpatterns = [
path('', include('Shopping.cart.urls')),
path('accounts/', include('django.contrib.auth.urls')),
path('admin/', admin.site.urls),
]

我想看到我的模板覆盖 Django 默认模板

已解决我犯了一个错误,我将我的模板文件夹放在了应用程序中。这是造成问题的原因。现在我将我的模板文件夹移动到项目文件夹。现在一切正常。谢谢。

最佳答案

我的解决方案是将“用户”应用指向“INSTALLED_APPS = []”中内置的 django 应用之上。

2020 年 11 月 12 日更新:

Python 从上到下读取代码。

来自Django官方docs在 INSTALLED_APPS 设置上:

When several applications provide different versions of the sameresource (template, static file, management command, translation), theapplication listed first in INSTALLED_APPS has precedence.

如果“users”应用程序位于“django.contrib.admin”下方,那么 Django 将转到“admin”应用程序并在那里找到 templates/registration/password_change_form.html

因此,“用户”应用程序必须在 INSTALLED_APPS 中的管理应用程序之前。

关于python - django 自定义模板未呈现 password_change_form.html,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58496482/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com