我是Python / GAE / Django的新手。我用GAE得到的东西本身没有内存会话...但我想我想要一些等价的东西。我{Big}或者MemCache会话read Django会话can be backed但是我从来没有让它们工作过。我想我要问的是“我应该......”
在我看来,会议不是开箱即用的支持,并且不是一流的公民。你做什么的?!
感谢。
答案 0 :(得分:3)
开箱即用的App引擎不支持django会话的原因是因为django使用基于数据库表(模型)的会话,而appengine不支持django ORM。
解决这个问题的方法是让django模型在appengine上开箱即用。它是通过在App Engine Patch项目中修补django代码完成的。
使用这个补丁,当django模型工作时,你可以访问django admin,django auth以及最新的django版本。
您也可以在App引擎上找到关于部署django应用程序的博文,非常有用:http://uswaretech.com/blog/2009/04/develop-twitter-api-application-in-django-and-deploy-on-google-app-engine/
答案 1 :(得分:1)
gaeutilities库附带了一个运行良好的会话管理类:
答案 2 :(得分:1)
我现在正在使用gaeutilities会话。但是,问题是这些创建的会话只能在服务器端代码中访问。当我尝试在django模板标签中访问它们时,我可以检索它们。我错过了什么吗?
示例:客户端(Django模板标签)
{% if request.session["email"]%}
<p><a href="/logout/"id="menu">Logout</a></p>
<p class="subtext">GoodBye!</p>
{% else %}
<p><a href="/login/"id="menu">Login</a></p>
<p class="subtext">Welcome!</p>
{% endif %}
服务器端只是一个简单的self.session ['email'],可以被所有服务器端文件访问。
除了将会话值呈现给页面之外,有关如何在客户端访问它们的任何想法?我需要所有客户端页面来访问会话值。
答案 3 :(得分:0)
gaeuitlities包含一个django中间件,但是我有一段时间没有完成django开发,并且不能100%保证它与django保持同步。如果有问题我肯定不会花很长时间来解决。
如果您为会话使用该中间件,它应该按预期工作,包括在模板中。如果遇到问题,请在github上提出任何问题。