gpt4 book ai didi

mysql - 以编程方式识别 Django 外键链接

转载 作者:行者123 更新时间:2023-11-29 00:49:34 26 4
gpt4 key购买 nike

类似于我问的问题here ,如果我想列出模型中的所有外键关系,有没有办法自动检测这些关系(向前和向后)?

具体来说,如果模型 1 读取

class Mdl_one(models.Model):
name = models.CharField(max_length=30)

和模型 2 读取

class Mdl_two(models.Model):
mdl_one = models.ForeignKey(Mdl_one)
name = models.CharField(max_length=30)

是否有一些我可以从 Mdl_one 运行的元命令(如 Model_one()._meta.one_to_many)告诉我 mdl_two 与它有一对多的外键关系?简单地说 mdl_one 和 mdl_two 可以连接,不一定任何两个对象实际上

最佳答案

这是你要找的:

yourModel._meta.get_all_related_objects()

示例(已编辑):

class Alumne(models.Model):
id_alumne = models.AutoField(primary_key=True)
grup = models.ForeignKey(Grup, db_column='id_grup')
nom_alumne = models.CharField("Nom",max_length=240)
cognom1alumne = models.CharField("Cognom1",max_length=240)
cognom2alumne = models.CharField("Cognom2",max_length=240, blank=True)
...

class Expulsio(models.Model): <---!
alumne = models.ForeignKey(Alumne, db_column='id_alumne')
dia_expulsio = models.DateField(blank=True)
...


>>> from alumnes.models import Alumne as A
>>> for x in A._meta.get_all_related_objects():
... print x.name
...
horaris:alumneexclosdelhorari
presencia:controlassitencia
incidencies:entrevista
incidencies:expulsio <---!
incidencies:incidencia
incidencies:incidenciadaula
seguimentTutorial:seguimenttutorial

关于mysql - 以编程方式识别 Django 外键链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9151360/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com