![](/img/trans.png)
[英]How to get data from another class with ForeignKey relationship
[英]Mapping a ForeignKey with another class
这是我的Django Models.py
class Test1(models.Model):
id = models.AutoField(db_column='Id', primary_key=True)
name = models.TextField(db_column='Name', blank=True, null=True)
class Test2(models.Model):
id = models.AutoField(db_column='Id', primary_key=True)
sequence = models.IntegerField(db_column='Sequence')
test1id = models.ForeignKey('Test1', models.DO_NOTHING,null=False, db_column='Test1Id')
我想要做的是确保保存Test1 id时,它会自动填写test1id。
不知道您要在这里做什么,但是如果您想为模型实施任何后保存操作,请查看django signal 。 特别是在post_save信号处。
这是模型Test1
的post_save
信号用法示例(假设您要创建新的Test2
对象):
from django.db.models.signals import post_save
from django.dispatch import receiver
@receiver(post_save, sender=Test1)
def create_test2(sender, instance, created, **kwargs):
Test2.objects.create(test1id=instance)
您可以重新定义保存方法:
def save(self, **kwargs):
if self.pk is None:
super(Test1, self).save()
Test2.objects.create(test1id=self)
else:
super(Test1, self).save()
因此,当您保存Test1时,将创建一个Test2条目
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.