的Django 1.10.1濾波器具有任意數目或Q對象通過合併OR邏輯運算
搜索表單。用戶插入由空格分隔的單詞。 必須在標題字段中找到這些詞的ANY的對象。
我打算用這樣的:
Article.objects.filter(
Q(title__icontains="table") | Q(title__icontains="helm")
)
我可以讓Q對象容易:Q = Q(title__icontains = 「表」)。
但障礙是如何將參數傳遞給過濾器方法。
https://docs.djangoproject.com/en/1.10/topics/db/queries/
的語法是濾波器(** kwargs)。
有了一個循環我可以編寫這樣一本字典:
q_objects = {"1": Q(title__icontains="table"), "2": Q(title__icontains="glasses")}
但問題是與「|」。
如何將它傳遞給過濾器方法對我來說是個謎。換句話說,我無法用OR邏輯運算符構建過濾器。
你能幫我嗎?
親愛的Todor,謝謝你的回答。看起來很有希望。我必須消化。如果這有效,我會很樂意接受。 – Michael