使用 django-pipeline 在 collectstatic 之后自动删除源文件
Automatically remove source files after collectstatic with django-pipeline
使用 django-pipeline,是否可以在 collectstatic 之后自动删除源文件?
例如:
PIPELINE_JS = {
'stats': {
'source_filenames': (
'js/jquery.js',
'js/d3.js',
'js/application.js',
),
'output_filename': 'js/stats.js',
}
}
收集静态数据:
$ python manage.py collectstatic
$ ls static/js
jquery.js
d3.js
application.js
stats.js
(我不要 jquery.js、d3.js、application.js)
Django-pipeline 在编译包时发送信号,您可以在 docs, and about signals in general here 中阅读更多相关信息。你可以像这样挂钩这个信号:
from pipeline.signals import js_compressed
def clear_files(sender, **kwargs):
print kwargs
if 'package' in kwargs:
print kwargs['package'].sources
# here remove unwanted files
js_compressed.connect(clear_files)
使用 django-pipeline,是否可以在 collectstatic 之后自动删除源文件?
例如:
PIPELINE_JS = {
'stats': {
'source_filenames': (
'js/jquery.js',
'js/d3.js',
'js/application.js',
),
'output_filename': 'js/stats.js',
}
}
收集静态数据:
$ python manage.py collectstatic
$ ls static/js
jquery.js
d3.js
application.js
stats.js
(我不要 jquery.js、d3.js、application.js)
Django-pipeline 在编译包时发送信号,您可以在 docs, and about signals in general here 中阅读更多相关信息。你可以像这样挂钩这个信号:
from pipeline.signals import js_compressed
def clear_files(sender, **kwargs):
print kwargs
if 'package' in kwargs:
print kwargs['package'].sources
# here remove unwanted files
js_compressed.connect(clear_files)