在Django中提供静态文件。需要解释

时间:2014-09-27 04:08:48

标签: django django-staticfiles

我想知道在Django中提供静态文件的方法是正确的。一切正常,但哪一个是最好的方式。

我在模板中尝试了{{ STATIC_URL }}。哪个工作正常。

然后{% load static %}并使用{% static 'path/to/static/file' %}加载静态文件。 这一个也在发挥作用。 {% load staticfiles %}然后{% static 'path/to/static/file' %}加载静态文件。

我很困惑哪一个是正确的,应该使用。请有人向我解释。 据我所知{{ STATIC_URL }}标记仅使用STATIC_URL文件中定义的settings.py

load staticload staticfiles在幕后做了什么。我尝试过官方documentation和此one

1 个答案:

答案 0 :(得分:1)

如果您有任何计划使用替代存储空间(例如使用django-stroage),则应使用{% static ... %}标记。

static代码请求存储后端返回url

对于默认存储FileSystemStoragestatic仅返回与请求文件名相关联的settings.STAITC_URL


load加载自定义标记,过滤器。要使用static,您需要加载它,因为它不是默认加载的库的一部分。