将链接的和内联的javascript或css压缩到单个缓存文件中。

django-compressor的Python项目详细描述


https://codecov.io/github/django-compressor/django-compressor/coverage.svg?branch=develophttps://img.shields.io/pypi/v/django_compressor.svgBuild Statushttps://caniusepython3.com/project/django_compressor.svg

Django压缩机加工、组合和缩小连接和内联 将django模板中的javascript或css放入可缓存的静态文件中。

它支持coffeescript、less和sass等编译器 可通过自定义处理步骤扩展。

Django压缩机与Django 1.11及更新版本兼容。

工作原理

在模板中,标记{% compress js/css %}{% endcompress %}被解析并搜索css或js。这些款式和 脚本随后由可选的、可配置的编译器和 过滤器。

css的默认过滤器将静态文件的路径重写为绝对路径。 默认情况下,javascript和css文件都是连接和缩小的。

作为最后一步,模板标记输出一个<script><link> 指向优化文件的标记。或者它也可以 将生成的内容直接内联到原始模板中。

由于文件名依赖于内容,因此可以给出这些文件 一个遥远的未来到期日期,不用担心过时的浏览器缓存。

为了提高性能,连接和压缩过程 也可以在请求/响应周期之外使用 django管理命令manage.py compress

可配置性和可扩展性

django压缩器具有高度可配置性和可扩展性。html解析 是使用lxml完成的,或者如果python的内置htmlparser不可用 违约。作为替代方案,django压缩机提供了BeautifulSoup和 ^基于{a7}的解析器,以及一个抽象基类,使 编写自定义解析器。

Django压缩机还配有内置的 YUI CSS and JS压缩器,yUglify CSS and JS压缩器,谷歌的 Closure Compiler,道格拉斯·克罗克福德的python端口JSmin,python端口 yui css压缩器csscompressor和一个过滤器,用于将(某些)图像转换为 data URIs

如果您的设置需要不同的压缩机或其他后处理 工具实现自定义过滤器将相当容易。简单地扩展 从一个可用的基类。

有关django压缩机的使用和设置的更多文档可以是 在django-compressor.readthedocs.org上找到。

django压缩器的源代码可以在 github.com/django-compressor/django-compressor。你也可以在那里登记。

Django压缩机的开发版本可以安装 pip install git+https://github.com/django-compressor/django-compressor.git

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何获取筛选后的extendedDataTable的选定行?   java在调试生成中使用JNI函数运行C++应用程序导致分割错误   tcp如何在一台Java服务器上处理超过一百万个并发客户端?   安卓使用类在Java中存储静态数据?   来自守护进程的java错误响应:mkdir/var/lib/docker/overlay2   JavaI在形状Arraylist中添加了一个矩形,但该形状不会显示在面板上   Java和hibernate是一个应用程序独立的数据库   java如何编写调用其他两个任务的gradle任务?   java为什么Gradle用失败的测试将我的构建标记为成功?   JavaRapidClipse和Microstream:需要惰性加载到表中的示例   java为什么字符串数组中的第一个字符串被忽略   java如何在Oracle 10gR2和JPA中实现不区分大小写和不区分重音的功能?   java spring引导rest api:显示信息错误