【问题标题】:Django-Compressor Compressed FilenameDjango-Compressor 压缩文件名
【发布时间】:2014-02-25 17:43:56
【问题描述】:

使用 Django 压缩器。想知道是否有办法获取压缩文件名,以便我可以异步加载脚本(因为 django-compressor 目前不支持)。

例如所以我可以在我的模板中做这样的事情

var compressed = {{ COMPRESSED_JS_FILENAME|undefined }};
if (compressed) {
    var script = document.createElement('script');
    script.src = compressed;
    script.setAttribute('async', True);
    document.documentElement.firstChild.appendChild(script);
}

Python 版本:2.7
Django 版本:1.4.1

【问题讨论】:

    标签: python django django-compressor


    【解决方案1】:

    替代解决方案

    找不到这样做的方法,所以我为页面添加了钩子以遍历标签,基本上查找已压缩的标签并向它们添加异步标签。 伪代码/想法

    content = BeautifulSoup(page)
    scripts = [tag.extract() for tag in soup.find_all('script')]
    for script in scripts:
        old_script = script
        src = script.get('src')
        if '/COMPRESSED/' in src:
            script['async'] = "True"
        page = page.replace(old_script, script) 
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-01-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-05-13
      • 1970-01-01
      • 1970-01-01
      • 2014-01-23
      相关资源
      最近更新 更多