1

使用 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)

4

1 回答 1

1

Django-pipeline 会在编译包时发送信号,您可以在docs中阅读有关此内容的更多信息,并在此处阅读有关信号的一般信息。你可以像这样挂钩这个信号:

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)
于 2015-05-29T19:58:22.960 回答