Python的Django框架中TEMPLATES项的设置教程

yizhihongxing

以下是关于“Python的Django框架中TEMPLATES项的设置教程”的完整攻略,内容包含两条示例说明:

1. 什么是 Django Templates?

Django Templates 是 Django 框架中的模板引擎,用于构建网站的用户界面。

2. 如何在 Django 中设置 TEMPLATES?

在 Django 中,TEMPLATES 变量通过设置 BASE_DIR 和 os 模块中的 join() 方法来定义。

# settings.py

# 设置模板目录
TEMPLATES_DIR = os.path.join(BASE_DIR, 'templates')

# 设置 Django 模板引擎
TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [TEMPLATES_DIR],
        'APP_DIRS': True,
        'OPTIONS': {
            'context_processors': [
              'django.template.context_processors.debug',
              'django.template.context_processors.request',
              'django.contrib.auth.context_processors.auth',
              'django.contrib.messages.context_processors.messages',
            ],
        },
    },
]

以上代码中:

  • TEMPLATES_DIR 存放模板的目录;
  • BACKEND 引擎设为 Django 自带的后端;
  • DIRS 设置一个可包含模板的目录列表;
  • APP_DIRS 则是告知 django 在每个应用目录下寻找模板文件(即该应用在 INSTALLED_APPS 中被添加或已经被调用)。

3. 示例1:如何编写 Django 模板?

通过以下代码来理解创建一个模板并插入数据:

<!-- hello.html -->

<!doctype html>

<html>
<head>
    <title>Hello World!</title>
</head>

<body>
    <h1>Hello, {{ name }}!</h1>

    <p>Welcome to my Django website.</p>
</body>
</html>

上述代码使用 {{ name }} 占位符来传递参数。在以下视图中展示该模板:

# views.py

from django.shortcuts import render

def hello(request):
    return render(request, 'hello.html', {'name': 'William'})
  • render() 函数将请求、模板名称和一个字典作为参数,该字典包含要传递到模板中的值。
  • 该视图将视图返回为响应对象,该响应对象包括渲染的模板、请求上下文和模板渲染上下文。

4. 示例2:如何扩展模板?

借助 extends 标签来扩展模板,如以下代码所示:

<!-- base.html -->

<!doctype html>

<html>
<head>
    <title>{% block title %}{% endblock %}</title>
</head>

<body>
    <h1>{% block content %}{% endblock %}</h1>

    <p>Welcome to my Django website.</p>
</body>
</html>

在此基础上,可以方便地扩展出想要的新模板:

<!-- child.html -->

{% extends "base.html" %}

{% block title %}
    About Me
{% endblock %}

{% block content %}
    <p>Hi, my name is William.</p>
{% endblock %}
  • base.html 扩展到新页面 child.html
  • 使用块来标记新页面中不同于基模板的部分。
  • 在新页面中,使用 extends 改变标题和内容。

希望这篇攻略对你有所帮助!

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python的Django框架中TEMPLATES项的设置教程 - Python技术站

(0)
上一篇 2023年5月15日
下一篇 2023年5月15日

相关文章

  • Django中的Signal代码详解

    下面我会详细讲解“Django中的Signal代码详解”的完整攻略,包括两条示例说明。 什么是Signals Signal是Django框架中一种提供了统一解耦机制的工具。Signal机制可以在软件设计中完成消息的发布和订阅功能。简单来说,Signal是一种django中内部|跨应用程序的非阻塞通信方式。 优点是:1. 内部处理自由方便,不受调用方影响;2.…

    Django 2023年5月15日
    00
  • django框架学习:二十一.admin列表优化和排序

    今天学习一下列表优化和排序 ModelAdmin django的options.py里面 ModelAdmin类定义的参数可以设置admin后台列表页面,相关的参数如下      排序字段 后台列表页面,如果想按某个字段排序,可以加个ordering参数      刷新页面后,就是降序了 列表分页 列表页默认是设置的100个记录,我们也可以修改下设置成默认每…

    2023年4月10日
    00
  • django xadmin 模板的定制

    编辑新增等页面对应的modelform为ModelFormAdminView (xadmin.views.edit.ModelFormAdminView)   通过源码分析,新增对象的template属性为add_form_template, 修改为change_form_template, 代码如下: class ModelFormAdminView(Mo…

    Django 2023年4月16日
    00
  • Django进阶之session Django进阶之session

      基于cookie做用户验证时:敏感信息不适合放在cookie中 session依赖cookie session原理 cookie是保存在用户浏览器端的键值对 session是保存在服务器端的键值对   session服务端中存在的数据为: session = { 随机字符串1:{ 用户1的相关信息 } 随机字符串2:{ 用户2的相关信息 } } sess…

    Django 2023年4月9日
    00
  • django-debug-toolbar

    django-debug-toolbar django,web开中,用django-debug-toolbar来调试请求的接口,无疑是完美至极。   可能本人,见识博浅,才说完美至极, 大神,表喷,抱拳了。 第一步:   pip install django-debug-toolbar        安装完成之后。就改往下继续配置了。 第二步:   打开项目…

    Django 2023年4月10日
    00
  • Django WebEditor(CKeditor)

    涉及到的文件会在文章结尾给出下载地址!   1) 将 ckeditor 放在某个位置,只要你的settings可以搜索到,比如,我放在目录第一层,setting设置如下: INSTALLED_APPS = ( ‘ckeditor’, ) 2) 将静态文本放在static下。 目录结构应该为 : –static/    –ckeditor/        …

    Django 2023年4月13日
    00
  • Python django搭建layui提交表单,表格,图标的实例

    下面是关于“Python django搭建layui提交表单、表格、图标的实例”的完整攻略,包含两条示例说明。 一、搭建环境准备 安装Python及相关扩展:安装Python3.x及pip,安装Django框架、PyMySQL数据库连接器、Django-MySQL数据库引擎、xlwt模块。 安装layui:从官网下载Layui压缩包,将解压后的layui文件…

    Django 2023年5月16日
    00
  • Django网络框架之HelloDjango项目创建教程

    下面我为你详细讲解” Django网络框架之HelloDjango项目创建教程” 的完整攻略,包含两条示例说明。 1. 环境准备 在开始创建 HelloDjango 项目之前,需要在本地电脑上安装好 Django 以及相关开发工具。可以在终端中输入以下命令来安装: pip install django 2. 项目创建 2.1 在终端中,切换到项目存放的目录下…

    Django 2023年5月16日
    00
合作推广
合作推广
分享本页
返回顶部