È possibile ottenere il modello correlato di una chiave esterna attraverso il campo della chiave esterna stesso?Django Foreign Key: ottieni un modello correlato?
Per esempio, se ho 3 modelli:
class ModelA(models.Model)
field1 = models.CharField(max_length=10)
class ModelB(models.Model)
field1 = models.CharField(max_length=10)
class ModelC(models.Model)
field1 = models.CharField(max_length=10)
field2 = models.ForeignKey(ModelA)
field3 = models.ForeignKey(ModelB)
e voglio fare:
for field in ModelC._meta.fields:
if field.get_internal_type() == "ForeignKey":
#get the related model for field e.g. ModelA or ModelB
Questo è possibile utilizzando solo i modelli stessi, piuttosto che le istanze dei modelli?
Aggiornamento: nel nuovo rilascio di Django 2.0, sembra che "rel" non sia più un campo di ForeignKey. Potresti provare: 'ModelA._meta.get_field ('foo'). Related_model'. Lo capisco digitando "tab" per completare automaticamente nella riga di comando. –