Мне нужен доступ к модели ForeignKey
данной модели.Django: как получить доступ к модели ForeignKey?
Вот пример кода:
class modelA(models.db):
field1 = models.ForeignKey('modelB')
class modelB(models.db):
pass
## below is the pseudo code
modelA.get_model_of_fk('field1').objects.all() # fetch all objects of modelB
Конечно, это будет так легко, если есть экземпляр modelA
участие. Но я просто не могу найти способ сделать это, не создавая экземпляр modelA
.
Мое текущее решение:
instance_of_a = modelA.objects.all()[0]
model_b = instance_of_a.field1.__class__
model_b.objects.all() # fetch all objects of modelB
@jpic SO сказал мне, что я могу принять свой ответ в течение 2 дней. – yegle
фантастический, спасибо yegle! – jpic
Django имеет рамки для реализации этого. См. Мой ответ ниже. То, что вы реализовали, возможно, делает то же самое внутри, но я думаю, что он не очень чист относительно того, что происходит. – zsquare