0
我正在製作一個自定義的django模板標籤。動態指定函數中的變量名稱
的初步版本:
import models
@register.filter
def intensity1(value):
return models.CHOICES_FOO[value]
它只是返回model.FOO
列表
但其實我有幾個不同的列表,models.CHOICES_BAR
的value'th元素,models.CHOICES_BAZ
所以我認爲做一個更通用的函數,將其傳遞給value
和arg
,它指定要引用哪個變量列表。
@register.filter
def intensity2(value, arg):
return models.arg[value]
arg = "INTENSITY_CHOICES"
print (intensity2(value, arg))
但當然這是行不通的。與失敗module 'models' has no attribute 'arg'
有沒有辦法來表達這樣的事情?或者我會更好地將所有這些選擇保留在dict
中,然後通過引用密鑰來檢索它們?
一個'dict'的選擇可能是我怎麼會去,但是這是你如何解決通過名字來訪問項目的一般問題。 –