我在django中有一个简单的视图
class SimpleView(View):
def get(self, *args, **kwargs):
c = C()
c.m()
class C:
def m(self):
x = # get from an external server if not set
我想在x
SimpleView
例如,让我们考虑以下情况:
有人#1向get
提出SimpleView
请求。 x
未设置,因此将从外部服务器获取。
有人#2向get
提出SimpleView
次请求。 x
已设置,因此不会从外部服务器获取。
我知道那段代码没有这样做。我知道什么是全局变量。但是,我不知道如何在不同请求之间共享数据。我不想使用数据库来存储它(因为优化) - 值x
不必是持久的。
请注意,如果共享内容的方法是线程安全的(这不是必需的,我处理它)将会很棒。
怎么做?
(django 1.6)
答案 0 :(得分:1)
由于您不需要永久存储数据,因此您应该使用session store。
通常会话引擎配置为使用数据库;可以使用其他后端,但很少有任何理由这样做。
(另请注意,您应该升级您的Django版本; 1.6是旧的,不受支持的,可能不安全。)