rde*_*ges 7 compression django django-compressor
我正在使用django-compressor来压缩我网站的静态CSS和Javascript文件.由于我通过Amazon S3提供我网站的静态资产,我还使用django-storage将我的文件上传到S3.
这是我的问题:我正在尝试创建一个干净的base.html模板,我的网站的所有其他模板都可以继承和扩展.这是目前的样子:
{% load compress %}
<html>
<head>
<!-- test -->
{% compress css %}
<link rel="stylesheet" type="text/css" media="screen" href="{{ STATIC_URL }}css/styles.css" />
{% endcompress %}
{% compress css %}
{% block css %}{% endblock %}
{% endcompress %}
{% compress js %}
{% block js %}{% endblock %}
{% endcompress %}
</head>
<body>
{% block body %}{% endblock %}
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
正如您所看到的,我在这里尝试做的是允许继承此模板的模板覆盖css和js块,因此他们可以定义自己的css和javascript进行压缩.不幸的是,这不是发生的事情.
当我运行python manage.py compress(让django-compressor分析我的模板并生成压缩的javascript和css代码)时,它实际上并没有找到我包含的css和javascript文件.
例如,这是我网站的index.html模板:
{% block css %}
{{ block.super }}
<link rel="stylesheet" type="text/css" media="screen" href="{{ STATIC_URL }}css/index.css" />
{% endblock %}
Run Code Online (Sandbox Code Playgroud)
当我尝试访问我的网站上的该页面时,我收到一条错误消息,指出压缩文件不存在.
我相信发生的事情是该python manage.py compress命令不会检查我继承的模板base.html.由于它没有分析它们,因此它不会生成任何压缩代码.
我真的很想让这个工作,因为我到目前为止找到的唯一解决方法是{% compress %}...{% endcompress %}在我明确指定的每个模板文件中手动添加标签.我只是讨厌这样做,因为它在所有地方都重复了这么多代码:(
任何建议将不胜感激.
我想您正在使用脱机压缩,在这种情况下,模板继承不能像预期的那样工作.请参阅与此"问题"相关的这些问题:
| 归档时间: |
|
| 查看次数: |
3160 次 |
| 最近记录: |