我会尽我所能来描述我在这里要做的事情。 我有3类:在带有Django中的2个ManyToMany字段的查询中使用过滤器
- 问题
- QuestionType
- QuestionTemplate
而且关系是:
- 问题< -ManyToMany-> QuestionType
- QuestionTemplate < -ManyToMany-> QuestionType
所以查询是在内部QuestionTemplate了一种方法,让我那有都跟QuestionTemplate相同QuestionType可能出现的问题的列表。
我试过了:questions = Question.objects.filter(type__in = template.type.all())
其中“template”是一个QuestionTemplate对象。 但是,这个查询返回给我的是模板中的QuestionType列表中至少有一个QuestionType的问题。 我想要做的是让问题和模板中的问题类型完全相同。
我尝试了很多事情,但无法得到这个工作,请,有人救了我!
请澄清你想要得到什么。你试图得到在......中完全相同的问题?我想你在你最初的帖子中留言了几句。 – DTing 2011-04-07 22:49:27
我想在给定的QuestionTemplate上得到与QuestionType具有相同(精确)连接的问题。 因此,如果我得到一个具有QuestionType =(Type1,Type2和Type3)的模板 查询将返回所有连接QuestionType =(Type1,Type2,Type3)的问题。 因此,与QuestionType具有不同连接的任何其他问题(例如Type1,Type2和Type5)都不会进入列表。 同样的问题具有QuestionTypes =(Type1和Type2),因为它没有像模板那样的Type3,它也会被抛出。 – Arruda 2011-04-10 02:26:57