Skip to main content

未知

项目描述

当您需要缩小静态文件以供生产使用时,这个小应用程序有助于管理您的静态文件。此外,它能够对资产进行版本控制,这样每当您需要更改静态文件时,用户就不会从浏览器缓存中获得旧文件。

安装

标准 Django 方式:

pip install django-versioned-static

添加到您的INSTALLED_APPS

INSTALLED_APPS = (
    ..
    ..,
    'versioned_static',
    ...
)

自己配置资产:

STATICS_ASSETS = {
    'css': {
        'css/mycoolproject.css': {
            'media': ('screen', 'projection', 'tv'),
            'files': ('css/jquery-ui-1.8.18.custom.css', 'css/style.css',),
            'version': 1
        },
        'css/print.css': {
            'media': ('print',),
            'files': ('css/print.css',),
            'version': 1
        }
    },
    'js': {
        'js/mycoolproject.js': {
            'files': ('js/jquery-1.7.1.min.js',
                      'js/main.js'),
            'version': 1
        }
    }
}

完毕!

模板中的使用

很简单。使用资产模板标签。给它静态类型(css 或 js)和基本 css 别名。它将直接为您生成所有必要的 HTML:

{% load versioned_static_tags %}
{% asset "css" "css/mycoolproject.css" %}
{% asset "css" "css/print.css" %}
{% asset "js" "js/mycoolproject.js" %}

它需要您在帐户中的设置。在开发中(当DEBUG = True时),您将获得未版本化和未缩小的静态文件。当您关闭调试时,您将获得版本化资产链接。

结果 DEBUG=True

<link type="text/css" rel="stylesheet" href="/static/css/jquery-ui-1.8.18.custom.css" media="screen,projection,tv"/>
<link type="text/css" rel="stylesheet" href="/static/css/style.css" media="screen,projection,tv"/>

<link type="text/css" rel="stylesheet" href="/static/css/print.css" media="print"/>

<script type="text/javascript" src="/static/js/jquery-1.7.1.min.js"></script>
<script type="text/javascript" src="/static/js/main.js"></script>

结果 DEBUG=False

<link type="text/css" rel="stylesheet" href="/static/css/mycoolproject.1.css" media="screen,projection,tv"/>

<link type="text/css" rel="stylesheet" href="/static/css/print.1.css" media="print"/>

<script type="text/javascript" src="/static/js/mycoolproject.1.js"></script>

缩小文件

此应用程序具有简单的管理命令,可帮助您创建用于生产的缩小文件。用法是这样的:

django-admin.py minifystatics [(CSS/JS) ASSET_FILE]

先前场景的真实示例:

django-admin.py minifystatics css css/print.css

如果要在应用程序设置中生成所有文件,只需运行不带任何参数的命令:

django-admin.py minifystatics

默认情况下,该命令将在您的STATIC_ROOT中查找(因此请确保在 minify 命令之前运行 collectstatic )并将其用作根路径。

笔记

django-versioned-static 在内部使用 YUI 库来缩小 CSS/JS 资产。

下载文件

下载适用于您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。

源分布

django-versioned-static-1.4.3.tar.gz (5.4 kB 查看哈希)

已上传 source