Estoy moviendo una aplicación que usa django_cms de un servidor, donde todo funcionó, a otro y he pasado las últimas 4 horas tratando de encontrar la causa de este error. Una sugerencia muy bienvenida!django_cms Configurado incorrectamente: Error al importar el middleware cms.middleware.media
mod_wsgi (pid=21972): Exception occurred within WSGI script '/var/www/vhosts/compdoctest.com/django/compdoc/django.wsgi'.
Traceback (most recent call last):
File "/usr/lib/python2.5/site-packages/django/core/handlers/wsgi.py", line 230, in __call__
self.load_middleware()
File "/usr/lib/python2.5/site-packages/django/core/handlers/base.py", line 42, in load_middleware
raise exceptions.ImproperlyConfigured('Error importing middleware %s: "%s"' % (mw_module, e))
ImproperlyConfigured: Error importing middleware cms.middleware.media: "No module named media"
La línea en cuestión es el último en la lista de middleware en settings.py
MIDDLEWARE_CLASSES = (
'django.middleware.common.CommonMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'cms.middleware.page.CurrentPageMiddleware',
'cms.middleware.user.CurrentUserMiddleware',
'cms.middleware.multilingual.MultilingualURLMiddleware',
'cms.middleware.media.PlaceholderMediaMiddleware',
)
Si quito la última línea a continuación, sigue el código y cae sobre más tarde diciendo es necesario que el tema de middleware .
Estoy usando una versión ligeramente diferente de django, 1.2.1 final en el antiguo servidor de trabajo y 1.2.3 final en el nuevo servidor.
Todos los cosas que he intentado:
- La misma versión de django_cms - 2.1.0 beta 3 - que se utilizó en el servidor antiguo
- La última versión en github - 2.1.0. beta2-550 Poner el CMS, MPTT, menús, carpetas de Publisher en el
- aplicación desde Python importar el
- buscado en Google (nadie tiene el mismo problema que yo puedo encontrar)
- archivo middleware directamente (no hay problema)
resultado de la apertura en Python:
python manage.py shell
Python 2.5.2 (r252:60911, Jan 20 2010, 23:14:04)
[GCC 4.2.4 (Ubuntu 4.2.4-1ubuntu3)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
(InteractiveConsole)
>>> import cms.middleware.media
>>> cms.middleware.media.__file__
'/var/www/vhosts/compdoctest.com/django/compdoc/cms/middleware/media.pyc'
>>> from django.forms.widgets import Media
>>> import cms.middleware.media
>>>
Puede dar una explicación un poco más del problema y las soluciones. –
El problema era simplemente que no podía encontrar lo que necesitaba en el camino. Creo que el servidor anterior era feliz sin un seguimiento/pero este servidor era más quisquilloso. De todos modos, agregar el comando sys.path anterior solucionó el problema. – PhoebeB
Tuve este problema y esta solución no funcionó para mí. Sin embargo, inspirado por esta solución, también agregué: 'sys.path.insert (0, '/the/path/to/myapp/lib/python2.6/site-packages /')' y funcionó, o al menos pasó a un nuevo conjunto de problemas. –