我找到了我想要的解决方案。
https://docs.djangoproject.com/en/2.1/topics/db/models/#abstract-base-classes
class ServiceProviderBase(models.Model):
sp_id = models.CharField(max_length=64, primary_key=True)
name = models.CharField(max_length=64, null=True, blank=True)
isEnterprise = models.CharField(max_length=5)
cluster = models.CharField(max_length=64)
created_date = models.DateTimeField(auto_now_add=True)
class Meta:
abstract = True
class ServiceProviderCurrent(ServiceProviderBase):
pass
class ServiceProviderArchive(ServiceProviderBase):
pass
class GroupBase(models.Model):
id = models.AutoField(primary_key=True)
grp_id = models.CharField(max_length=64)
name = models.CharField(max_length=64, null=True, blank=False)
userLimit = models.IntegerField()
organizationType = models.CharField(max_length=64)
created_date = models.DateTimeField(auto_now_add=True)
class Meta:
abstract = True
class GroupCurrent(GroupBase):
organizationId = models.ForeignKey('sandbox.ServiceProviderCurrent', on_delete=models.CASCADE)
class GroupArchive(GroupBase):
organizationId = models.ForeignKey('sandbox.ServiceProviderArchive', on_delete=models.CASCADE)