使用 Google App Engine(Webapp)访问 Django 模板中的会话变量 - Python

Posted

技术标签:

【中文标题】使用 Google App Engine(Webapp)访问 Django 模板中的会话变量 - Python【英文标题】:Accessing session variable in Django template with Google App Engine (Webapp) - Python 【发布时间】:2011-04-22 16:58:14 【问题描述】:

我有一个 Django 模板作为我的前端。在后端,我使用 Gaeutilities 提供的会话来存储变量(电子邮件)。

前端:

% if session.Email %
        <div id="entersite">WELCOME <em>session.Email</em></div>
    % else %
        <div id= "entersite"><a href="/login/" id= "entersite">Enter the Site</a></div>
    % endif %

后端:

self.session = Session()
self.session['email'] = email
            temp = os.path.join(os.path.dirname(__file__),'templates/index.htm')
            outstr = template.render(temp, )
            self.response.out.write(outstr)

问题:如何在服务器端访问存储的会话并在 Django 模板(前端)上使用它?

任何人都可以提供有关此 qns 的更新吗?

【问题讨论】:

【参考方案1】:

您需要在 django 模板上下文中设置会话对象,不是吗?

template.render(temp, 'session':self.session)

【讨论】:

嗨,这样做,您只是使用会话值呈现模板。发生的情况是,当我单击指向另一个页面的链接并从该页面返回到同一模板时,会话值不会显示。这是因为我没有将会话值从页面渲染到模板。我想做的是在后端创建一个会话并遍历几个页面,当我回到模板时,仍然可以检索到会话值。有什么想法吗?【参考方案2】:

这样做,您只是使用会话值呈现模板。发生的情况是,当我单击指向另一个页面的链接并从该页面返回到同一模板时,会话值不会显示。这是因为我没有将会话值从页面渲染到模板。我想做的是在后端创建一个会话并遍历几个页面,当我回到模板时,仍然可以检索到会话值。有什么想法吗?

【讨论】:

以上是关于使用 Google App Engine(Webapp)访问 Django 模板中的会话变量 - Python的主要内容,如果未能解决你的问题,请参考以下文章

使用 Google App Engine 签名的 Google Cloud Storage 网址

是否可以将 Google App Engine 与 Google Cloud *** 一起使用?

Google App Engine 通过内部网络与 Compute Engine 通信

使用 Google App Engine 发布订阅

在 Google App Engine 中使用 Cron 作业

使用 Google App Engine 和 Google Cloud SQL 扩展 WordPress