用于引用静态文件的django模板标记
django-resourcetags的Python项目详细描述
Author: | John Millikin |
---|---|
Copyright: | This document has been placed in the public domain. |
概述
django-resourcetags是django的一组实用函数和标记。 它通过提供 自动版本控制和透明压缩处理。
用法
在INSTALLED_APPS设置中包括django_resourcetags。装载 使用{% load resources %}的标记库,然后使用 resource、resource_group或resource_url标记。
resource_url
像{% resource_url "/myapp/somefile.txt" %}一样使用。将计算 资源的mtime并将其包含在url中,以实现 自动版本化的资源。最终的url格式为:
{{MEDIA_URL}}/{{file_mtime}}/myapp/somefile.txt
查找mtime时,文件路径相对于MEDIA_ROOT。如果 找不到文件,将使用0的mtime。
resource
像{% resource "/myapp/somefile.txt" %}一样使用。自动检测 资源的mime类型,并将url包装在适当的html标记中。 缺省处理程序存在于CSS、JavaScript、PNG、JPEG和GIF中。附加 处理程序可以在RESOURCE_HANDLERS设置中注册,使用此 格式:
RESOURCE_HANDLERS = {'text/css': 'myproject.myapp.resource_handlers.css'}
resource_group
像{% resource_group "mygroup" %}一样使用。组可以定义为 设置文件,以减少重复键入并便于压缩 (见下文)。资源组的定义格式为:
RESOURCE_GROUPS = {'mygroup': ('file1.css','file2.css')}
在非压缩模式下,每个文件都将包含在单独的标记中。
压缩
可以使用命令压缩资源和资源组 manage.py compressresources。将连接资源组 一起形成一个文件,并通过压缩过滤器运行。单身 资源也可以通过列出的压缩过滤器运行 它们在COMPRESS_EXTRA设置中。
压缩过滤器是^{tt18}中列出的函数$ 设置,这是mime类型的映射->;[函数名]。压缩 函数按顺序调用。
压缩资源存储在 COMPRESSED_MEDIA_ROOT,并从urlCOMPRESSED_MEDIA_URL提供服务。
css和javascript的压缩过滤器包含在 django_resourcetags.compression.filters模块,在名称下 filters.javascript和filters.css。
Genshi集成
用于django-genshi。包括django_resourcetags.genshi_integration.template_context 在您的TEMPLATE_CONTEXT_PROCESSORS设置中,您将可以访问 函数resource()、resource_group()和resource_url()。 这些函数的工作方式与模板标记等价物类似。