[如何通过模型ForeignKey django获取ManyToMany的ID

问题描述 投票:0回答:1

如何通过Language访问Programmer的所有ID

class Language(models.Model):
    name = models.CharField(max_length=20)

class Programmer(models.Model):
    name = models.CharField(max_length=30)
    langs = models.ManyToManyField(Language,through='Level')

class Level(models.Model):
    language = models.ForeignKey(Language)
    programmer = models.ForeignKEy(Programmer)
    level = models.CharField(max_length=10)

我尝试过这种方法,但是没有人工作过

Programmer实例中:instance.level_set.language_idinstance.level.all.language_idinstance.level.all.language.id并尝试了此instance.level_set.language.id所有所说的程序员没有属性,languagelanguage_id等感谢您的任何建议

django django-models many-to-many
1个回答
0
投票

您应该在程序员实例中尝试以下操作

instance.langs.all()

对于语言学院

instance.programmer_set.all()

django many to many relationship with extra fields

-编辑-

在您的语言模型下定义功能

def __str__(self):
    return self.id

© www.soinside.com 2019 - 2024. All rights reserved.