我对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 %}
答案 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 %}
的所有引用都指向基础项目下的静态文件夹。