2009-04-24 130 views
2

現在我有這樣的代碼:是否可以動態定義函數參數的名稱?

 attitude = request.REQUEST['attitude'] 
     if attitude == 'want': 
      qs = qs.filter(attitudes__want=True) 
     elif attitude == 'like': 
      qs = qs.filter(attitudes__like=True) 
     elif attitude == 'hate': 
      qs = qs.filter(attitudes__hate=True) 
     elif attitude == 'seen': 
      qs = qs.filter(attitudes__seen=True) 

它會是更好的動態定義「attitudes__xxxx」的名稱。有沒有辦法做到這一點?

謝謝!

+0

重複:http://stackoverflow.com/questions/353489/cleaner-way-to-query-on-a-dynamic-number-of-columns-in-django – 2009-04-24 19:43:12

回答

7

是的。

qs.filter(**{ 'attitudes__%s'%arg:True }) 
+0

謝謝!你的情況,很少修改,正常工作:qs.filter(** {'態度__%s'%str(態度):真實}) – ramusus 2009-04-25 08:23:07

相關問題