【发布时间】:2011-01-22 20:57:35
【问题描述】:
我已经开始使用Jinja2 作为我在 Google App Engine 上的模板引擎(在 Python 中)。
我的问题是:字节码缓存会在生产中起作用吗?它在开发服务器上运行良好,但我在某处读到字节码缓存依赖于 marshal 模块,App Engine 不支持该模块。将marshal 更改为使用pickle 方法,将This answer 更改为不同的问题提供了一种可能的解决方案。有人试过吗?
总的来说,在将 Jinja2 与 App Engine 结合使用时,我还有什么需要考虑的吗?
任何帮助将不胜感激!
谢谢。
【问题讨论】:
-
原来
pickle不能用于代码对象(这就是Jinja2 使用marshal来持久化其编译的模板字节码的原因)。marshal在本地开发环境中可用,但在部署的GAE环境中是一个空模块(见code.google.com/appengine/docs/python/runtime.html#Pure_Python)。
标签: python google-app-engine caching jinja2