我希望能够为父类提供外键,从而允许查询子类。所有其他解决方案都是噩梦。 我试图做到这一点(Destination也是一个父类,它有一个我想要关联的子类的数量):
class Destination(PolymorphicModel)
class Account(Destination)
class Organization(Destination)
class Person(Destination)
class Transaction(models.Model)
destination = models.ForeignKey(Destination, verbose_name="Destination", null=True, blank=True,
related_name="CompletedTransaction_Destination_FK")
我也在其他地方引用目的地。 这是我尝试迁移时收到的错误消息:
psycopg2.IntegrityError:无法创建唯一索引“baseapp_organization_organization_destination_ptr_id_key” 详细信息:Key(organization_destination_ptr_id)=(1)重复。
如果我可以制作目的地课程,我会很高兴
abstract = True
然后我不能拥有外键。我需要能够选择所有这些目的地,并且他们需要在数据库中保持不同的真实模型。
我也尝试过GenericRelations,但事实证明这是一个噩梦,正如我之前所说的那样。
感觉我能以某种方式绕过这个错误,但有什么帮助吗?
答案 0 :(得分:0)
解决方案,我猜它会适用于无法创建索引的其他错误,就是擦除数据库删除所有迁移。确实很痛苦,但现在我能做到:
destinations = Destination.objects.all()
,它会给我所有的对象