如何在django模板中包含外部css,图像等?

Yug*_*dle 8 python django

在django中,所有URL都是从urls.py文件中解析出来的.因此,没有目录结构.

那么,如果你必须在模板中包含一个css文件呢?

有没有办法没有添加到url.py文件?

如果不是,那么您是否会在urls.py中为每个资源创建新条目?

agf*_*agf 9

请参阅Django HOWTO上的静态文件.

基本上,在配置文件中,指定一个特殊目录来存储静态文件.文档中的示例是:

STATIC_ROOT = "/home/jacob/projects/mysite.com/sitestatic"
Run Code Online (Sandbox Code Playgroud)

您将CSS文件,图像等放在那里,服务器将知道提供与该目录中的静态URL模式匹配的URL.


pic*_*e 涅 6

您不再需要指定 STATIC_ROOT(对于 djangor > 1.10)。简单地说,确保

django.contrib.staticfiles

包含在 INSTALLED_APPS 中

STATIC_URL = '/静态/'

在你的设置.py

在您的应用程序目录中创建一个名为“static”的目录,并在创建的静态目录中创建另一个名为您的应用程序的子目录并在其中包含静态文件(您还可以根据您的喜好在最后一个目录中创建 js、img、css 子目录,如果你需要)

然后,在模板文件中包含正确的路径。例如:

src =“/static/my_app/example.js”

或者

src =“/static/my_app/js/example.js”

(假设您的 javascript 文件位于名为 js 的目录中)

或者(更好),使用静态模板标签定义路径:

{% load static %}
<script src="{% static "my_app/js/example.js" %}"></script>
Run Code Online (Sandbox Code Playgroud)

所有你必须知道的:

https://docs.djangoproject.com/en/1.10/howto/static-files/