Django项目静态文件发布实践

/ 0评 / 0

开发环境中,js与css通常情况下都是使用未压缩的版本。而在生产环境中,通常会替换成min版本。如果手动去替换每次的发布过程,必然会让开发人员产生厌烦情绪。因此,总结了一下自己的发布实践,非最优,希望你能提出宝贵意见。

对于静态文件,使用grunt进行管理。具体的配置与使用方式再次就不再累述了,参见如下文档。
grunt简介:http://www.gruntjs.org/
如何配置: http://javascript.ruanyifeng.com/tool/grunt.html

那么生成完了合并压缩后的文件,就需要去html上进行引用。在引用之前,先到settings.py中进行环境的判断,声明一个Env变量,通过判断系统平台来确定使用那一套静态文件。在response的时候将这个变量赋给模板。然后html文件的引用便通过此变量进行判断。

settings.py

if platform.system() == 'linux':
    Env = 'Product'
else:
    Env = 'Dev'


index.html
{% if env == 'Dev' %}
link href="/static/css/app/bootstrap.css" rel="stylesheet" media="screen"
{% else %}
link href="/static/css/app/bootstrap.min.css" rel="stylesheet" media="screen"
{% endif %}

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注