У меня есть настройка Apache для обслуживания запросов на http://www.mysite.com из этого каталога:
/ вар / WWW / HTML / www.mysite.com
Сайт Django находится в /var/www/html/www.mysite.com/mysite.
Я получаю эту ошибку, когда делаю запрос для / mysite / app / foo:
(трассировка большого стека)
AttributeError: у объекта 'module' нет атрибута 'common'
'myapp.common' - это первый элемент в списке после всех приложений django (например, 'django.contrib.admin') в INSTALLED_APPS в файле settings.py. Если я изменю порядок перечисленных модулей, Django задыхается на первом пути одного из моих приложений, с которым оно сталкивается.
Путь импорта Python кажется правильным, так как он находит mysite.settings:
<Location "/mysite/">
SetHandler python-program
PythonHandler django.core.handlers.modpython
SetEnv DJANGO_SETTINGS_MODULE mysite.settings
PythonOption django.root /mysite
PythonDebug On
PythonPath "['/var/www/html/www.mysite.com'] + sys.path"
</Location>
В чем может быть проблема? Странно, что он жалуется на «обычный», когда фактический список содержит «mysite.common»:
INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
'mysite.common',
....
Это ошибка в Django или у меня что-то неправильно настроено? Возможно, некоторая внешняя зависимость должна быть добавлена в путь импорта? Он работает нормально с сервером разработки Django.