我正在学习Django,我对它还很陌生,所以我还不明白所有的部分是如何组合在一起的。
我已经成功地构建了教程网站(https://docs.djangoproject.com/en/4.2/intro/tutorial01/)上的民意调查应用程序和一个“Hello World!’app作为附加测试。我在根目录创建了一个主页,其中包含指向这两个应用程序的链接。代码如下。
<!DOCTYPE html>
<html lang="en">
<head>
<title>B. Rabbit</title>
<meta charset="UTF-8">
</head>
<body>
<h3>Applications</h3>
<ul>
<li><p><a href="/polls">A Polls Application.</a></p></li>
<li><p><a href="/hello">Hello World App.</a></p></li>
<li><p></p><a href="/HWFolder/HWPage.htm">Hello World stand-alone page.</a></p></li>
</ul>
</body>
</html>
我现在想在我的项目中创建一个带有静态网页(只是一个简单的html文件)的新文件夹,并添加一个指向此静态网页的主页面链接。也就是说,通过python manage.py startapp hello
创建一个应用程序,我只想创建一个原始的.html
文件,将其粘贴在某个文件夹中,然后指向这个。但我不知道该怎么做。
上面的第三个列表对象是我的尝试,但这产生了一个404 Page not found错误。
下面是网站的urls.py
脚本。我能够通过遵循民意调查应用程序的语法来让Hello World应用程序工作,但我不知道如何编辑它以仅引用独立页面。
import os
from django.contrib import admin
from django.urls import include, path, re_path
from django.views.static import serve
from django.views.generic.base import TemplateView
# Up two folders to serve "site" content
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
SITE_ROOT = os.path.join(BASE_DIR, 'site')
urlpatterns = [
path('admin/', admin.site.urls),
path('polls/', include('polls.urls')),
path('hello/', include('hello.urls')),
]
有人能告诉我需要编辑什么脚本,或者我如何调整网站的urls.py
来引用一个独立的页面,比如说/HWFolder
文件夹中的HWPage.htm
。
1条答案
按热度按时间yqlxgs2m1#
要在Django中添加一个链接到一个独立的HTML页面,而不需要创建一个单独的应用程序,你可以按照以下步骤操作:
1.在Django项目的根目录中创建一个名为“static”的文件夹(与www.example.com文件处于同一级别manage.py)。
1.在“静态”文件夹中,创建另一个名为“HWFolder”的文件夹。
1.将HTML文件“HWPage.htm”放入“HWFolder”中。
1.在Django项目的
urls.py
文件中,在顶部添加以下导入:1.修改
urlpatterns
列表以包含用于提供静态HTML文件的新路径:1.保存更改并运行Django开发服务器。
现在,当你访问URL
/HWFolder/HWPage.htm
时,Django将从静态文件夹中提供“HWPage.htm”文件。确保你的Django项目的
settings.py
文件包含以下配置来提供静态文件:这允许Django从“static”文件夹中查找和提供静态文件。
请记住重新启动Django开发服务器以使更改生效。