Django从id中过滤多对多

时间:2014-09-12 13:42:50

标签: python django django-models many-to-many

我有问题,我用python / django编码。 我有这种models.py:

class Skill(models.Model):
name = models.CharField()
    skill=models.ForeignKey(Skill)

class Job(models.Model):
    name = models.CharField()
    skill= models.ManyToManyField(Skill)

我的问题是:我想打印一份工作,所有附加的技能。 示例:我有开发人员作业,ID = 4(在我的数据库中),我想打印所有 随着开发人员工作附加的技能。

Tks !!

2 个答案:

答案 0 :(得分:1)

如果您已经拥有了Job项,则在名为my_job的变量中<:p>

my_job.skill.all()

如果您有ID:

Skill.objects.filter(job__id=4)

答案 1 :(得分:0)

我相信你也会发现获得所有乔布斯的有用的可能性,这些乔布斯被引用了一些技巧。这很简单:

ninja_skill = Skill.objects.get(name='ninja')
jobs_with_ninja_skill = ninja_skill.job_set.all()