2012-02-11 122 views
0

我的django应用程序中的页面可让用户缩放和拖动图像。我想保存缩放级别和图像位置,以便下一次查看页面时,图像会回到上次访问的状态。在Django中保存动态页面

django sessions docs清楚地显示了如何设置会话信息,但只有在Python代码中。我不清楚的细节是当我离开我的页面时,如何执行“会话更新”代码。

是否有可能让我保存的会话与JavaScript变量同步Django模板?

回答

1

您需要您的网页将该信息发送到您的服务器,以便它可以在会话中更新它。会话在django中的工作方式是它仅向您的网页发送会话标识(通常通过cookie),然后将该cookie发送回您网页的每个请求(cookie是HTTP协议的一部分,并由Web浏览器管理) 。

模板代码在服务器上运行以输出html和javascript,但实际上没有一个在服务器上运行,并且该模板不是到服务器的实时连接。仅仅在javascript中设置变量将不会让他们回到服务器。

然而,您可以使用ajax请求将请求中保存的变量发送到您的服务器,以便您的服务器将它们放入会话中供以后使用。

jQuery提供了一个卸载事件,当用户离开时会收到通知。你可以绑定到这个事件来做你的更新。

+0

您能否指点我正确的方向来学习如何完成答案的ajax请求部分? – ajwood 2012-02-11 22:29:51