Skip to main content
 首页 » 编程设计

python之如何在两个 Django 类之间共享变量

2024年08月23日32yyy_WW

我有两个 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 

我应该怎么做才能实现它?

请您参考如下方法:

你应该首先实例化一个A实例,然后从generate函数返回url,然后将返回值提供给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)