我对这个问题很感兴趣,并在在这里问这个问题之前寻找一些解决方案。假设我有一个Model
在不同的领域共享相同领域的领域,Models
我该如何实现这一点,当我得到objects
那些Models
我可以包含的领域时Model
foreign key
,我确实尝试使用Generic Relation
in来实现这一点,DJango
但它并没有解决我的问题。
这是我要使用的示例Generic Relation
:
Model1(models.Model):
.. objects_on_this_model ..
Model2(models.Model):
.. objects_on_this_model ...
# Now this is where the model I could save different models with same field shared
SameObjectModel(models.Model):
content_type = models.ForeignKey(ContentType, on_delete=models.CASCADE)
object_id = models.PositiveIntengerField()
content_object = GenericForeignKey('content_type', 'object_id')
.. objects_on_this_model .. # which is the field that has same field to use in different models
因此,当我尝试从中获得时,我该objects
如何Model(n)
实现或获得SameObjectModel
?
我有这个想法,我可以这样做:
Model(n).objects.prefetch_related('fk').all()
似乎这不是一个好主意,因为我不知道应该放在哪里,related_name
因为外键是content_type
模型并且有object_id
代表字段primary_key
。