您好我有下面的代碼做工精細:如何篩選在Django設置查詢結果列表
if getattr(hotel_main, "X", 1):
hotels1 = hotels.filter(Q(X=True))
for hotel in hotels1:
if models.CalendarDay.objects.filter(hotel=hotel, date=date).count() == 0:
similar_venues.append(hotel)
我上面的代碼重用一遍又一遍,以檢查不同的條件像Q(Y =真),Q( Y = True),Q(Z = True)
如果我可以根據條件過濾列表,我可以擺脫重複代碼...我想要這樣的:similar_venues.filter(Q(X =真))任何幫助,請...
是什麼simllar場館在這裏?它是查詢集還是列表 – karthikr
查看Django謂詞。可能有用。 https://github.com/ptone/django-predicate – miki725
如果我沒有誤解它,你正在尋找類似'hotels1 = hotels.filter(Q(X = True)| Q(Y = True)| Q( Z = True)|)'這意味着任何(X,Y,Z)值可以是'真' – FallenAngel