社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Django

误区 2 模板目录 (系列笔记:从django官方文档学习)

小涛 • 5 年前 • 318 次点击  

以下摘自官方文档:

首先,在你的 appname 目录里创建一个 templates 目录。Django 将会在这个目录里查找模板文件。

你项目的 TEMPLATES 配置项描述了 Django 如何载入和渲染模板。默认的设置文件设置了 DjangoTemplates 后端,并将 APP_DIRS 设置成了 True。这一选项将会让 DjangoTemplates 在每个 INSTALLED_APPS 文件夹中寻找 "templates" 子目录。这就是为什么尽管我们没有像在第二部分中那样修改 DIRS 设置,Django 也能正确找到 appname 的模板位置的原因。

在你刚刚创建的 templates 目录里,再创建一个目录 appname,然后在其中新建一个文件 index.html 。换句话说,你的模板文件的路径应该是 appname/templates/appname/index.html 。因为 Django 会寻找到对应的 app_directories ,所以你只需要使用 appname/index.html 就可以引用到这一模板了。

模板命名空间

虽然我们现在可以将模板文件直接放在 appname/templates 文件夹中(而不是再建立一个 appname 子文件夹),但是这样做不太好。Django 将会选择第一个匹配的模板文件,如果你有一个模板文件正好和另一个应用中的某个模板文件重名,Django 没有办法 区分 它们。我们需要帮助 Django 选择正确的模板,最简单的方法就是把他们放入各自的 命名空间 中,也就是把这些模板放入一个和 自身 应用重名的子文件夹里。

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/23633
 
318 次点击