我試圖在django sqlite數據庫中實現搜索。如何爲django Q對象動態加入多個參數
我得到一個未知長度的參數列表,它應該都與'LIKE'匹配。這意味着我需要至少匹配其中一個參數的所有對象。
正如我從django文檔中看到的,我可以通過使用Q對象來實現。
例子:
Students.objects.get(
Q(name_contains='franz') |
Q(birthdate_date=date(2005, 5, 2) |
Q(param3_contains='lorem'
)
現在的問題是,我該怎麼處理它加入所有從PARAMS創建將q對象作爲參數傳遞給objects.get()。我在這找不到任何東西。
這裏的另一個問題是處理幾種不同的字段查找類型。
我欣賞任何建議,幫助或幫助您可以給的鏈接。謝謝。
不清楚你「加入Q對象」的意思,如果你想和他們在一起,你可以使用['&'](https://docs.djangoproject.com/en/1.8/ REF /模型/查詢集/#q-對象)。另外你的例子似乎有不正確的字段查找語法,它應該是像'name__contains'兩個下劃線。 –
我的意思是我不知道我得到哪些參數。所以它可能是2,3或7個參數。我必須遍歷它們,將它們放在Q對象中,然後將它們作爲參數傳遞給我的get函數。但我不知道我如何將這些論點與|連接在一起。所以我明確地想要使用OR。 – Igle