Python, Heroku & Memcachier - доступ к переменной settings.py
Я следую инструкциям на Heroku для использования Memcahier с Python.
При попытке использовать переменную 'mc', которая установлена в файле settings.py, в другом файле я получаю следующую ошибку:
Exception Value: name 'mc' is not defined
Я попытался импортировать settings.py в файл, который я хочу использовать переменную 'mc', но я получаю еще одну ошибку:
'Settings' object has no attribute 'mc'
Как я могу получить доступ к этой переменной mc вне файла настроек?
1 ответ
Вероятно, это проблема импорта.
Вам нужно получить доступ mc
с помощью settings.mc
потому что, если вы импортировали его, используя import settings
в начале файла он не входит в ваше текущее пространство имен, а в отдельное, называемое "настройки".
Если вы хотите импортировать его непосредственно в текущее пространство имен, используйте
from settings import *
вместо.
Это работает только тогда, когда ваш собственный файл находится в том же каталоге, что и settings.py, или если settings.py находится в каталоге, известном Python. (См. PYTHONPATH)
Если settings.py находится в другом каталоге, вы можете, например, импортировать его, используя весь путь
Между прочим, никогда не повредит просматривать документы Python: посмотрите это
Также убедитесь, что вы используете правильный регистр для вашего модуля настроек. Если файл настроек импортируется как "настройки" с строчной буквой, то вам нужно обращаться к нему везде, потому что Python чувствителен к регистру