Django模型:存储对未知类的引用

时间:2014-07-25 22:02:05

标签: python django django-models

如何将ForeignKey引用存储到未定义的(尚)类?我甚至不能谷歌,因为我不知道技术术语用来形容它:/

models.py

class Book(models.Model):
 name=models.CharField(max_Length=100)

class Car(models.Model):
 name=models.CharField(max_Length=100)

class CartItem(models.Model):
 item_type=models.ForeignKey( **<I dont know yet, maybe Book, maybe Car>** )
 ...

1 个答案:

答案 0 :(得分:2)

您可能希望使用contenttypes framework,甚至可能使用generic foreign keys,具体取决于您希望如何存储数据。使用内容类型,您可以执行以下操作:

class CartItem(models.Model):
    item_type = models.ForeignKey(ContentType)