如何在两个django类之间共享变量?

时间:2016-01-26 18:45:17

标签: python django

我有两个django A B 。两者都在同一个django App文件夹中(但它们在不同的文件中)。现在我希望班级 B 可以访问班级 A 变量。

Class A:
 def generate(self):
   url = "i want access to this variable from Class B"


Class B:
 def get(self):
  # get url variable and do something

我该怎么做才能实现它?

1 个答案:

答案 0 :(得分:3)

您应首先实例化A实例,然后从url函数返回generate,然后将返回值反馈给get中的B函数:

Class A:
 def generate(self):
   url = "i want access to this variable from Class B"
   return url


Class B:
 def get(self, url):
  # get url variable and do something

# here's how you use it
a = A()
b = B()
b.get(a.generate())

看看是否有意义。

修改

如果您的generate函数设置为stone,您还可以将url提升为类变量:

Class A:
 def generate(self):
   url = "i want access to this variable from Class B"
   self.foo_url = url

a = A()
b = B()
# call generate to get the foo_url as property of object a
a.generate()
b.get(a.foo_url)