Tôi đã thử nghiệm với Bộ nén Django để phát triển một khối tệp css. Trước tiên, tôi đặt các thẻ {% compress%} xung quanh một tệp, tạo f6527e81a37c.css. Sau đó, tôi bao gồm hai tệp css khác giữa các thẻ, nhưng thay vì một tệp được rút gọn, điều này dẫn đến 2 tệp được rút gọn: f6527e81a37c.css và ee906624f953.css. Cuối cùng, tôi muốn concat và nén tất cả khối css đó thành một tệp đã được rút gọn, nhưng việc di chuyển nhiều tệp vào các thẻ nén dường như không tái tạo các khóa được liên kết với các tệp css, tức là nó vẫn nén vào nhiều tệp css mặc dù chúng được gói trong cùng một khối {% compress%}.Máy nén Django không tái tạo CSS nén
Tôi đã thử xóa memcache của Django, xóa thư mục/static/CACHE/mà Compressor tạo và sử dụng lệnh quản lý nén đi kèm với Django Compressor, nhưng tôi vẫn nhận được nhiều tệp nén css khi tôi chạy trình tạo môi trường. Có một số loại làm mới tôi có thể làm như vậy mà Django Compressor tái tạo các phím css liên kết với các tập tin trong khối {% nén%}? Máy nén phải lưu trữ các khóa tập tin nén trước đó ở đâu đó.
Kết quả của nén:
<link rel="stylesheet" href="/static/CACHE/css/f6527e81a37c.css" type="text/css" media="screen, projection" />
<link rel="stylesheet" href="/static/CACHE/css/ee906624f953.css" type="text/css" />
<link rel="stylesheet" href="/static/CACHE/css/7147db857125.css" type="text/css" media="screen, projection" />
<link rel="stylesheet" href="/static/CACHE/css/043e7d82b775.css" type="text/css" />
settings.py:
STATICFILES_FINDERS = (
'django.contrib.staticfiles.finders.FileSystemFinder',
'django.contrib.staticfiles.finders.AppDirectoriesFinder',
#other
'compressor.finders.CompressorFinder',
)
COMPRESS_ENABLED = True
COMPRESS_OFFLINE = True
COMPRESS_CSS_FILTERS = [
#creates absolute urls from relative ones
'compressor.filters.css_default.CssAbsoluteFilter',
#css minimizer
'compressor.filters.cssmin.CSSMinFilter'
]
COMPRESS_JS_FILTERS = [
'compressor.filters.jsmin.JSMinFilter'
]