Type object is not subscriptable - я понимаю ошибку, но не знаю, почему это происходит
Отказ от ответственности: этот код работал на python 2.7, я только что перешел на 3.7 :) Ошибка, которая происходит, действительно происходит в Django 1.11
У меня есть такая строка кода, которая выдает ошибку 'type object is not subscriptable':
from ..settings import Settings
skinurl = join(url_base, 'css/skins/skin-%s.min.css' % Settings['THEME.SKIN'])
Класс настроек выглядит следующим образом:
class Settings(SettingsBase):
store = DEFAULT_SETTINGS
__metaclass__ = Meta
def __getitem__(self, key):
print(self.store['THEME.SKIN'])
return self.iget(key)
в DEFAULT_SETTINGS у меня есть THEME.SKIN:
'THEME': {
'SKIN': 'green',
},
У меня есть идея, почему это может произойти - этот print в getitem ничего не возвращает. Если я изменю его на
print(self.store['THEME']['SKIN'])
это так.
Если я также изменю этот вызов join на этот
skinurl = join(url_base, 'css/skins/skin-%s.min.css' % Settings['THEME']['SKIN'])
Я все еще получаю type object is not subscriptable.
Что здесь происходит и как я могу это исправить?