0
我必須得到一個具有多對多關係並具有相同數量結果的QuerySet,就好像我在數據庫中執行查詢一樣,但無法管理如何執行此操作;我不在乎是否可以將結果作爲QuerySet項目或值項目獲得,但我確實在意獲得相同數量的結果。Django QuerySet結果中的結果爲空字段
試想以下情形:
class Person(models.Model):
name = models.CharField()
class Car(models.Model):
name = models.CharField()
class House(models.Model):
people = models.ManyToMany(Person)
cars = models.ManyToMany(Car)
house_1 = House.objects.create()
house_2 = House.objects.create()
john = Person.objects.create(name='John')
mary = Person.objects.create(name='Mary')
house_1.people.add(john)
house_1.people.add(mary)
mike = Person.objects.create(name='Mike')
ferrari = Car.objects.create(name='Ferrari')
house_2.people.add(mike)
house_2.cars.add(ferrari)
'''
Expected search result, regardless of the result format (model instances or values):
------------------------------------
| House ID | Car | Person |
| 1 | | John |
| 1 | | Mary |
| 2 | Ferrari | Mike |
------------------------------------
'''
我怎樣才能獲得值列表,所有3個結果,跨越多個表,這裏?
我需要這個,所以我可以創建一個報告,它可能包含空字段,所以重複的結果必須列出。
謝謝!
這確實是一個奇怪的情況,Tomasz,但案例是我不得不改變我正在從原始SQL到Django的ORM的項目中的實現。使用原始SQL時,它們設法返回具有空值的列,這些是我必須使用ORM來捕獲的情況。 – diogobaeder 2011-03-08 14:52:59
但是現在的情況是,上週我辭掉了工作。所以我只會認爲這是一個尷尬的場景,希望不必在我的生活中再次處理應用程序中的巨大原始SQL。謝謝您的幫助! ;-) – diogobaeder 2011-03-08 14:55:24