所以这是元元中的一个小练习。我希望能够将模型引用存储为与另一个模型关联的表中的一行。像这样的东西:
class Widget(models.Model):
related = models.Model() # data model associated with this widget
identifier = models.CharField(max_length=500) # human-friendly descriptor
这并不能验证..我找到了一个可接受的解决方法,但我想知道是否有更合适/优雅的方法来做到这一点。
如果我正确理解你的问题,那么 GenericForeignKey 就是你所需要的。 你看过吗?
如果您只想保存另一个对象的实际模型,您可以简单地使用内容类型的外键:
from django.contrib.contenttypes.models import ContentType
class Widget(models.Model):
related = models.ForeignKey(ContentType)
identifier = models.CharField(max_length=500) # human-friendly descriptor