gpt4 book ai didi

python 观察者模式

转载 作者:太空狗 更新时间:2023-10-30 02:06:45 25 4
gpt4 key购买 nike

我是 python 的新手,但在尝试实现观察者模式的变体时遇到了障碍。

class X(models.Model):
a = models.ForeignKey(Voter)
b = models.CharField(max_length=200)

# Register
Y.register(X)

这似乎不起作用,因为它说 X 未定义。有几件事是可能的:

A) 有一种方法可以引用当前类(不是实例,而是类对象)。

B) 你甚至不能在方法外运行代码。 (我认为这可能几乎像静态构造函数一样工作 - 它只会运行一次)。

最佳答案

在 python 中,类 block 中定义的代码被执行,只有然后,取决于各种事情——比如在这个 block 中定义了什么——一个类被创建。所以如果你想将一个类与另一个类联系起来,你会写:

class X(models.Model):
a = models.ForeignKey(Voter)
b = models.CharField(max_length=200)

# Register
Y.register(X)

而且这个行为与django无关。

关于 python 观察者模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1046190/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com