Django静态文件-更改URL

时间:2018-06-20 08:28:54

标签: django heroku django-2.0

我对Django的静态文件有些困惑。

我知道它们不能在开发中使用,但是在生产环境中,我已尽一切努力来更改服务器文件的URL。它只是对我没有任何意义。

即使更改了/static/之后,一切仍然可以通过STATIC_URL使用我的URL来提供。

settings.py

STATIC_ROOT = os.path.join(BASE_DIR, 'dsadsa')
STATIC_URL = '/ddd/'
STATICFILES_DIRS = [
    os.path.join(BASE_DIR, 'app/static'),
]

根据这些设置,我希望所有静态文件都位于名为dsadsa的目录中,并且服务器的网址为www.example.com/ddd/file.css,但是并非总是通过{{1 }},从目录www.example.com/static/file.css

我正在没有staticfiles的Heroku中运行此项目

任何人都可以帮助我了解我在这里缺少什么吗?

更新:

我在模板中使用Debug = False

示例模板用法:

{% load static %}

1 个答案:

答案 0 :(得分:0)

我认为您正在寻找...也许

STATIC_DIR = os.path.join(BASE_DIR, 'ddd')
STATIC_URL = '/ddd/'
STATICFILES_DIRS = [STATIC_DIR,]

以上内容将{% load staticfiles %}中的base.html链接到包含img/css/etc.的静态文件夹

这会将对{% load staticfiles %}的所有引用都指向基础项目下的静态文件夹。