我有一个问题:
我的应用中存在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这个,但我不知道如何做到这一点,在每个相应的模型中保存这些字段。 / p>
谢谢,
答案 0 :(得分: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实例:
**这将使用与您的Cliente关系创建一个新的Imovel 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)