我使用的是Python 3.9和Django 3.2。我有以下型号
class Coop(models.Model):
objects = CoopManager()
name = models.CharField(max_length=250, null=False)
types = models.ManyToManyField(CoopType, blank=False)
addresses = models.ManyToManyField(Address, through='CoopAddressTags')
enabled = models.BooleanField(default=True, null=False)
phone = models.ForeignKey(ContactMethod, on_delete=models.CASCADE, null=True, related_name='contact_phone')
email = models.ForeignKey(ContactMethod, on_delete=models.CASCADE, null=True, related_name='contact_email')
web_site = models.TextField()
description = models.TextField(null=True)
approved = models.BooleanField(default=False, null=True)
我们想设置一种情况,有人可以提议对数据库中的一行进行更改,在保存之前会对其进行审查,所以我创建了这个结构
class CoopChange(Coop):
"""
"""
created_at = models.DateTimeField(null=False, default=datetime.now)
问题是,当我创建迁移时,创建的表只是指向原始模型,而不是存储所有字段
Table "public.directory_coopchange"
Column | Type | Modifiers
-------------+--------------------------+-----------
coop_ptr_id | integer | not null
created_at | timestamp with time zone | not null
这是不理想的,因为原始表将包含最终确定的条目和建议更改的条目。有没有一种方法可以创建一个实体,存储反映原始实体结构的拟议更改?