Динамическое имя словаря в шаблоне тега

У меня есть тег шаблона, чтобы получить имя словаря и элемент в нем. У меня есть словари в dictionary.py и я импортировал так же, как dict в теге шаблона. Как это,

import property.dictionary as dict

def getlisttype(value,arg):
    return dict.value[arg]

Я передаю имя словаря как значение и элемент в нем как аргумент. Но то, что я получаю, это ошибка, в которой нет слова "значение" в словаре. Есть ли способ сделать это?

dictionary.py

list_type_dict={
1:"Sale",
2:"Rent"
}

list_category_dict={
1:"Residential",
2:"Commercial"
}
.
.
.

1 ответ

Решение

Ты можешь использовать __dict__ который является словарем всех атрибутов в модуле, то есть:

import property.dictionary

def getlisttype(value, arg):
    return property.dictionary.__dict__[value][arg]

Не очень хорошая идея импортировать ваш модуль как dict так как это вызовет конфликт имен со встроенным dict ключевое слово.

Другие вопросы по тегам