24

我想捆绑 css 和 javascript 文件。我还想向客户发送遥远的过期标头,所以我需要文件版本控制。

在 Internet 上进行的快速搜索显示有几个为 Django 开发的资产管理器。以下是我可以联系到的列表:

  1. django-压缩
  2. django资产
  3. django-assetpackager
  4. django 媒体捆绑器
  5. django-mediacat
  6. django-site-assets
  7. django-静态管理
  8. django-compressor

他们似乎或多或少地执行相同的工作。django-compress、django-compressor 和 django-site-assets 乍一看似乎特别有前途。如果有人对其中任何一个提供反馈以帮助我在它们之间进行选择,我将不胜感激。

4

5 回答 5

12

正如您已经注意到的那样,它们都做同样的事情(或多或少)。我决定继续使用django_compressor

此外,我更喜欢在Web 服务器级别设置过期标头或应用动态压缩。恕我直言,这些操作不应由应用程序本身执行,因为有时它会导致一些问题,例如在错误页面上设置Cache-Control或过期标头等。 mod_expires模块很容易根据您的需要进行配置。对于使用 DEFLATE 输出过滤器的动态压缩,我按原样使用了这个mod_deflate 配置

于 2009-11-06T00:55:28.780 回答
7

自从提出这个问题以来,已经创建了新项目。

您可能想看看django-pipeline,它非常漂亮。

于 2012-02-28T14:19:11.240 回答
4

我一直在使用 django-compress,对此我很满意,尤其是因为我可以指定后端压缩器(例如,YUI 最适合我的 JS)。

以后我可能会考虑切换到 django_compressor,但它的优先级太低了 atm。

我还要指出,django-media-bundler 有一个其他功能没有的功能......自动构建图像精灵。我还没有现场使用它,所以我不确定它的实施情况如何,但这很整洁。您可以将其仅用于精灵,而将 css/js 用于其他压缩器之一。

于 2009-11-06T11:12:50.107 回答
2

FWIW,因为 djangopluggables.com 不再存在,也没有人在这里提到它:最近的比较是在djangopackages.com上,其中django_compressor是最常用的一台 ATM。正如 Jay Taylor 在评论中警告的那样,还没有尝试过 1.4 。

于 2012-11-23T10:26:23.123 回答
1

在众多竞争者中,我选择了django-compressor,因为它使用起来非常简单。只需在模板中放置一两个标签(典型场景:一个用于 css,另一个用于 js),大多数情况下您无需修改​​任何内容即可完成;您甚至不必声明或修改设置,它的默认设置就很好。

于 2009-11-09T13:53:31.013 回答