-1

我有一个问题:

我的应用程序中存在 3 个模型:

class Cliente(models.Model):
    #fields here ...

class Imovel(models.Model):
    #more fields and..
    dono = models.ForeignKey(Cliente)

class Captacao(models.Model):
    #here, have the fields of others models (Cliente and Imovel)

我想通过模型“Captacao”填充模型“Cliente”和“Imovel”......我知道有 post_save,但我不知道如何做到这一点,将这些字段保存在每个相应的模型中。

谢谢,

4

1 回答 1

1

如果您还没有 Cliente,您可以使用 Imovel 数据创建他:

def save_in_other_models(sender, instance, created, **kwargs):
    cliente = Cliente.objects.create(
        name=instance.name,
        ident=instance.ident,
    )
    Imovel.objects.create(
        dono=cliente
    )

models.signals.post_save.connect(save_in_other_models, sender=Captacao)

---------------- ** ---------------- ** -------------- -- ** ---------------- ** ---------------- ** ---------- ------ ** ---------

如果您已经拥有与 Captacao 相关的 Cliente 实例:

** 这将使用与您 Imovel 的 Cliente 关系创建一个新的 Imovel

def save_in_other_models(sender, instance, created, **kwargs):
    Imovel.objects.create(
        dono=instance.cliente
    )

models.signals.post_save.connect(save_in_other_models, sender=Captacao)
于 2013-04-01T13:55:51.613 回答