我当前正在尝试指向 Django 中的一个模板,该模板不在调用模板所在的目录中。
这是已复制并粘贴到此处的相对路径:
static\libraries\templates\our-tech-stack.html
Root
|
|---static
| |
| |--libaries
| |
| |--templates
| |
| |--<our-tech-stack.html>
|---templates
|
|--<calling-template.html>
这是
include
中的
<calling-template.html>
{% include "../static/libraries/templates/our-tech-stack.html" %}
这是我的设置
settings.py
'DIRS': [
.
...
...
os.path.join(BASE_DIR, 'static/libraries/templates'),
...
...
...
],
正如你所看到的,这已经被正确设置了,那么为什么 Django 告诉我模板不存在,而它显然是存在的?
阅读office文档 - 然而,官方文档是错误的。
这里有一些东西,其中一些是很好的实践,其中一些只是 Django 的工作原理,
python manage.py collectstatic
收集到同一目录中,尽管对于本地开发(即 runserver
),它们也应该从任何应用程序文件夹提供服务。{% load static %}
标签,然后使用 {% static 'path/to/file' %}
设置静态文件 - 这将在运行collectstatic后处理开发服务器和实时部署。settings.py
应定义 STATIC_URL
、STATIC_ROOT
和 STATICFILES_DIRS
,以实现开发和生产部署之间的功能一致。