首页 > 解决方案 > 如何指向 django 将模板放在首页

问题描述

我正在尝试在 django 框架中学习 python,我参加了一门课程,但它基于 django 的早期版本,而我使用的是 Django 2.1.3 和 python 3.7.0,所以我遇到了错误。我的问题是如何指向 urls.py 获取一个 html 模板并将其放在这个版本的 Django 的主页中?谢谢!!

标签: pythondjango

解决方案


我假设Front page代表Home page并且您的网站称为website。然后在urls.pywebsite/website也包含该settings.py文件的目录)中,创建一个HomePage视图

from django.views.generic import TemplateView
class HomePage(TemplateView):
    template_name = 'index.html'

然后在urls.py同一个文件夹中,执行以下操作:

from django.contrib import admin
from django.urls import path, include
from . import views

urlpatterns = [
    path('', views.HomePage.as_view(), name="home"),
    ]

然后,您需要templates在您网站的根目录下创建一个文件夹,该文件夹位于website/templates并创建website/templates/index.html您的主页模板。

website/website/settings.py文件中,确保设置TEMPLATE_DIR = os.path.join(BASE_DIR,'templates')和修改TEMPLATES变量:

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [TEMPLATE_DIR],
        ...  # rest of the code here

重新启动服务器,这应该可以正常工作。


推荐阅读