【发布时间】:2012-03-03 23:04:01
【问题描述】:
我最近刚开始在 Google App Engine 上使用 Jinja2 进行 HTML 模板,我喜欢它。
我听说Django templating engine can be used for other formats 那为什么不是 Jinja2?
具体来说,我想做的是为特定页面创建样式表存根,并在服务器端动态组合它们。
有人有这方面的经验吗?
【问题讨论】:
-
与您引用的问题一样,这更适合 StackOverflow。不过,我会试一试。我找不到任何对使用 Jinja 进行 CSS 模板的人的引用,但是查看语法,我不明白为什么它不能。我只是避免在你的 CSS 中使用用户输入,因为我不会指望它的 XSS 预防功能从 HTML 继承。
-
嗯。我想我只需要尝试一下。唯一的缺点是,文件当前被路由到静态目录。在 GAE 中,静态目录是自动压缩和缓存的位置。通过将它们移出静态目录,它们将失去这种优化。我想知道哪个更快,文件请求更少,还是缓存/gzipping?
-
嗯,它们都更快。在第一次请求时结合 CSS 更快,在后续请求中缓存更快。但是您总是可以同时执行这两种操作,并在每次更改时将 Jinja2 生成的样式表复制到静态目录中。
-
好点。我不知道如何实现它,但它绝对是一个理想的解决方案。需要一个用于编译/缩小所有更改文件的更新后挂钩。类似于 drydrop.binaryage.com 但没有 git/github 依赖项。
-
嗯。我想我总是可以做一个 cron 工作,每天检查次要版本号“os.environ.get('CURRENT_VERSION_ID').rsplit('.', 1);)”然后编译/缩小。
标签: css templates google-app-engine jinja2