我正在尝试构建一个Django信号,其发送者是模型(称为细菌),而接收者是模型(称为Bumblebee)。这些模型通过以下方式具有外键关系:
class Bumblebee(models.Model):
name = models.CharField(max_length=50)
class Bacteria(models.Model):
bumblebee = models.ForeignKey(Bumblebee, on_delete=models.CASCADE)
在构建此post_save信号以侦听正在创建的细菌时,我该如何调用Bumblebee字段?这是我所拥有的,但不起作用。
@receiver(post_save, sender=Bacteria)
def my_handler(sender, **kwargs):
bumblebee = Bacteria.bumblebee
print(bumblebee.name)
答案 0 :(得分:1)
您需要使用当前创建的细菌实例。
@receiver(post_save, sender=Bacteria)
def my_handler(sender,instance,created,**kwargs):
if created:
bumblebee = instance.bumblebee
print(bumblebee.name)
这里的实例是细菌的对象。