我會盡我所能來描述我在這裏要做的事情。 我有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