Tôi đang di chuyển một ứng dụng sử dụng django_cms từ một máy chủ, nơi mọi thứ đã hoạt động, khác và đã dành 4 giờ đồng hồ để tìm nguyên nhân gây ra lỗi này. Một đề xuất rất hoan nghênh!django_cms Không đúng cấu hình: Lỗi khi nhập phần mềm trung gian 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"
Dòng vi phạm là người cuối cùng trong danh sách middleware trong 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',
)
Nếu tôi loại bỏ dòng cuối cùng sau đó mã tiếp tục và ngã xuống sau nói mục được yêu cầu trong middleware .
Tôi đang sử dụng phiên bản hơi khác của django, 1.2.1 cuối cùng trên máy chủ làm việc cũ và phiên bản 1.2.3 cuối cùng trên máy chủ mới.
Tất cả những điều tôi đã cố gắng:
- Phiên bản tương tự của django_cms - 2.1.0 beta 3 - đã được sử dụng trên các máy chủ cũ
- Phiên bản mới nhất trên github - 2.1.0. beta2-550 Đưa cms, mptt, menu, thư mục xuất bản trong ứng dụng
- Từ trăn nhập khẩu
- googled (không ai có cùng một vấn đề mà tôi có thể tìm thấy)
- tập trung trực tiếp (không có vấn đề)
kết quả của khai mạc trong 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
>>>
Bạn có thể giải thích thêm về vấn đề và giải pháp hay không. –
Vấn đề đơn giản là nó không thể tìm thấy những gì nó cần trên con đường. Tôi nghĩ rằng các máy chủ cũ đã được hạnh phúc mà không có một dấu/nhưng máy chủ này đã được kén chọn. Dù sao thêm lệnh sys.path ở trên đã khắc phục được sự cố. – PhoebeB
Tôi gặp sự cố này và giải pháp này không hiệu quả đối với tôi. Tuy nhiên, lấy cảm hứng từ giải pháp này tôi cũng đã thêm: 'sys.path.insert (0, '/the/path/to/myapp/lib/python2.6/site-packages /')' và nó hoạt động - hoặc ít nhất chuyển sang một tập hợp các vấn đề mới. –