('压缩链接和内嵌的JavaScript或CSS到单个缓存文件。',)
项目描述
Django Compressor将Django模板中链接和内嵌的JavaScript或CSS进行处理、合并和压缩成可缓存的静态文件。
它支持诸如coffeescript、LESS和SASS之类的编译器,并通过自定义处理步骤进行扩展。
工作原理
在您的模板中,位于标签 {% compress js/css %} 和 {% endcompress %} 之间的所有 HTML 代码都会被解析和搜索 CSS 或 JS。这些样式和脚本随后将使用可选的、可配置的编译器和过滤器进行处理。
默认情况下,CSS 过滤器将静态文件的路径重写为绝对路径。JavaScript 和 CSS 文件默认情况下将被合并和压缩。
最后一步,模板标签输出一个指向优化文件的 <script> 或 <link> 标签。或者,它也可以将结果内容直接内联到原始模板中。
由于文件名取决于内容,因此可以给这些文件设置一个很长的过期日期,而不用担心浏览器缓存中的旧数据。
为了提高性能,可以通过使用 Django 管理命令 manage.py compress 在请求/响应周期之外手动运行合并和压缩过程。
可配置性与可扩展性
Django Compressor 非常可配置和可扩展。默认情况下,使用 lxml 进行 HTML 解析,如果它不可用,则使用 Python 内置的 HTMLParser。作为替代方案,Django Compressor 提供了一个基于 BeautifulSoup 和 html5lib 的解析器,以及一个抽象基类,这使编写自定义解析器变得容易。
Django Compressor 还内置了对 YUI CSS 和 JS 压缩器、yUglify CSS 和 JS 压缩器、Google 的 Closure Compiler、Douglas Crockford 的 JSmin 的 Python 版本、YUI CSS Compressor 的 Python 版本 csscompressor 以及将(某些)图像转换为 data URIs 的过滤器的支持。
如果您的设置需要不同的压缩器或其他后处理工具,将很容易实现一个自定义过滤器。只需扩展其中一个可用的基类即可。
有关 Django Compressor 的使用和设置的更多信息,可以在 django-compressor.readthedocs.org 上找到。
Django Compressor 的源代码可以在 github.com/django-compressor/django-compressor 上找到并贡献。您还可以在那里提交问题。
可以通过 pip install git+https://github.com/django-compressor/django-compressor.git 安装 Django Compressor 的开发版本。
项目详情
下载文件
下载适用于您平台的文件。如果您不确定该选择哪个,请了解有关安装包的更多信息。
源代码分发
构建分发
django_compressor-4.5.1.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | c1d8a48a2ee4d8b7f23c411eb9c97e2d88db18a18ba1c9e8178d5f5b8366a822 |
|
MD5 | 86a892f05846e16904cef95c5ad3916f |
|
BLAKE2b-256 | 1530a9994277ae05082ba5df22c5678a87082253a034927c8d9915c3bf3b8c36 |
django_compressor-4.5.1-py2.py3-none-any.whl的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 87741edee4e7f24f3e0b8072d94a990cfb010cb2ca7cc443944da8e193cdea65 |
|
MD5 | 9ae585fe8e81f2d464bc0db91d40bf9b |
|
BLAKE2b-256 | 00d9ac374a1f7a432230cdf4d2ffbe957fd0d4d5d6426bf4d5c17f382b0801c4 |