Django 模板学习
要系统学习 Django 模板的所有用法,优先看官方文档(最权威、最全面),辅以优质中文教程/书籍,以下是核心学习资源和重点章节指引:
一、官方文档(首选!最新、最准)
Django 官方模板系统文档是核心,不同 Django 版本(比如你用的 6.0)细节略有差异,建议看对应版本的文档:
1. 核心章节(必看)
- 模板基础:https://docs.djangoproject.com/zh-hans/6.0/topics/templates/
涵盖模板语法、变量、标签({% %})、过滤器({{ var|filter }})、模板继承(extends/block)—— 正是你问的block/extends核心知识点都在这。 模板语言参考:https://docs.djangoproject.com/zh-hans/6.0/ref/templates/language/
详细拆解所有模板语法:- 变量解析(
{{ }})、标签(if/for/block/extends/include等); - 过滤器(
date/length/default等); - 模板继承、上下文传递、静态文件引用(
{% static %})。
- 变量解析(
- 内置模板标签/过滤器:https://docs.djangoproject.com/zh-hans/6.0/ref/templates/builtins/
列出所有内置标签(比如url/static/csrf_token)和过滤器(比如truncatechars/safe),是日常开发的「字典」。
2. 实用扩展章节
- 静态文件处理:https://docs.djangoproject.com/zh-hans/6.0/howto/static-files/
对应你代码里的{% static %}标签用法; - 模板加载与配置:https://docs.djangoproject.com/zh-hans/6.0/ref/templates/api/
进阶用法(比如自定义模板加载器、上下文处理器)。
二、优质中文教程/书籍(易上手、贴合实战)
如果看英文原版吃力,或想结合实战理解,这些资源更友好:
1. 中文官方翻译版
Django 文档有完整的中文翻译(上面链接已贴中文版),和英文版同步更新,适合入门。
2. 经典书籍
- 《Django Web 开发实战》(作者:刘江):
国内最经典的 Django 实战书,专门有章节讲解模板系统,结合电商/博客等实战场景讲block/extends/include等用法,贴合实际开发; - 《Django for Beginners/Professionals/Experts》(有中译版):
分阶段讲解,入门篇就把模板继承、静态文件、模板语法讲得很透彻。
3. 免费中文教程
- Django 中文网:https://www.djangoproject.com/zh-hans/
官方中文社区,有入门教程和模板专题; - 菜鸟教程 Django 模板章节:https://www.runoob.com/django/django-templates.html
快速入门级,适合零基础理解模板语法; - B 站「尚硅谷/黑马程序员」Django 教程:
视频里会结合实战项目(比如你类似的后台管理/预约系统)讲解模板继承、导航高亮(active)等实操场景,和你当前的代码场景高度契合。
三、学习建议(针对性掌握)
- 先抓核心:优先掌握「模板继承(
extends/block)」「变量/标签/过滤器」「静态文件(static)」「URL 反向解析({% url %})」—— 这四个是你代码里用到的核心,也是日常开发最常用的; - 边练边查:比如写模板时,不确定
block能不能嵌套、static标签怎么用,直接翻官方文档的「模板语言参考」或「内置标签/过滤器」章节,快速定位; - 版本对应:你的 Django 是 6.0,注意避开旧版本(比如 2.x)的过时用法(比如
{% load staticfiles %}已被{% load static %}替代),官方文档选对应版本即可。
四、快速索引(针对你当前的代码场景)
如果想快速找对应知识点,直接搜文档里的关键词:
block/extends→ 搜「模板继承」;{% static %}→ 搜「static 模板标签」;{% url %}→ 搜「URL 反向解析 模板」;- 导航高亮(
active)→ 无直接文档,但结合「模板继承 + block 占位」的思路,就是「block 嵌在 HTML class 属性中」的实战技巧(官方文档讲语法,实战技巧需结合案例)。
总结:官方文档是「字典」,必查;中文教程/书籍是「地图」,帮你快速入门;结合你当前的图书馆预约系统代码,边写边查,很快就能吃透模板的核心用法~
(来自“豆包”大模型)