2012-09-26 77 views
0

我有一個屬性,作爲字符串傳入,用於調用X.objects.filter(** {string:TION})。這將會返回所有類型爲X的對象,其屬性字符串爲「TION」。是否有可能通過__icontains,__contains來做這種** kwargs輸入?這將如何工作?Django:使用__contains和kwargs過濾器

回答

2

只需在屬性外創建一個字符串__contains

更清楚,你想要的東西,如:

query_type = '{0}__contains' 
query_key = query_type.format(string) 
X.objects.filter(**{query_key: 'TION'}) 

或只是

X.objects.filter(**{string + '__contains': 'TION'}) 
+1

+1,爲的例子,我嘗試使用{0},因爲{}只是'2.7'和2.6 veeery通用。 –

+0

呼叫良好。更新。 – dokkaebi