我有两个班级:班级和职位。
# Reference Table Class
class Class(models.Model):
unit_type = models.CharField(max_length=30)
unit_name = models.CharField(max_length=20, unique=True)
unit_description = models.CharField(max_length=5000)
def __str__(self):
return self.unit_name
# Reference Table Position
class Position(models.Model):
Position_name = models.CharField(max_length=30, unique=True)
Position_description = models.CharField(max_length=5000)
Max_count = models.IntegerField()
unit_class = models.ManyToManyField(Class, through='ClassPosition')
def __str__(self):
return self.Position_name
创建一个Class(未更新)时,我想强制在Position表中创建一个记录。我该怎么做?
谢谢。
答案 0 :(得分:1)
您可以使用post_save
信号或overriding the model's save()
方法执行此操作。
在post_save()
signal方法中,您可以使用created
参数来确定它是新对象还是更新对象。在重写save()
方法中,可以使用以下条件完成:if not self.pk:
。