Django ImportError: No module named middleware
Je suis en utilisant Django version 1.8 et python 2.7. J'obtiens l'erreur suivante après l'exécution de mon projet.
Traceback (most recent call last):
File "C:\Python27\lib\wsgiref\handlers.py", line 85, in run
self.result = application(self.environ, self.start_response)
File "C:\Python27\lib\site-packages\django\contrib\staticfiles\handlers.py", line 63, in __call__
return self.application(environ, start_response)
File "C:\Python27\lib\site-packages\django\core\handlers\wsgi.py", line 170, in __call__
self.load_middleware()
File "C:\Python27\lib\site-packages\django\core\handlers\base.py", line 50, in load_middleware
mw_class = import_string(middleware_path)
File "C:\Python27\lib\site-packages\django\utils\module_loading.py", line 26, in import_string
module = import_module(module_path)
File "C:\Python27\lib\importlib\__init__.py", line 37, in import_module
__import__(name)
ImportError: No module named middleware
[26/Aug/2015 20:34:29] "GET /favicon.ico HTTP/1.1" 500 59
C'est mon settings.py fichier
"""
Django settings for collageapp project.
Generated by 'django-admin startproject' using Django 1.8.
For more information on this file, see
https://docs.djangoproject.com/en/1.8/topics/settings/
For the full list of settings and their values, see
https://docs.djangoproject.com/en/1.8/ref/settings/
"""
# Build paths inside the project like this: os.path.join(BASE_DIR, ...)
import os
APP_PATH = os.path.dirname(os.path.abspath(__file__))
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
# Quick-start development settings - unsuitable for production
# See https://docs.djangoproject.com/en/1.8/howto/deployment/checklist/
# SECURITY WARNING: keep the secret key used in production secret!
SECRET_KEY = '******************************************************'
# SECURITY WARNING: don't run with debug turned on in production!
DEBUG = True
ALLOWED_HOSTS = []
# Application definition
INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'manageApp',
'django.contrib.sites',
'allauth',
'allauth.account',
'allauth.socialaccount',
'allauth.socialaccount.providers.facebook',
'allauth.socialaccount.providers.google',
'django.contrib.admindocs',
'rest_framework',
)
SITE_ID = 1
MIDDLEWARE_CLASSES = (
'django.middleware.common.CommonMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.SessionAuthenticationMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
'django.middleware.security.SecurityMiddleware',
'corsheaders.middleware.CorsMiddleware',
'oauth2_provider.middleware.OAuth2TokenMiddleware',
)
ROOT_URLCONF = 'collageapp.urls'
CORS_ORIGIN_ALLOW_ALL = True
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [],
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
'allauth.account.context_processors.account',
'allauth.socialaccount.context_processors.socialaccount'
],
},
},
]
WSGI_APPLICATION = 'collageapp.wsgi.application'
# Database
# https://docs.djangoproject.com/en/1.8/ref/settings/#databases
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'college_app',
'USER': 'root',
'PASSWORD': '',
'HOST': 'localhost', # Or an IP Address that your DB is hosted on
'PORT': '3306',
}
}
# Internationalization
# https://docs.djangoproject.com/en/1.8/topics/i18n/
LANGUAGE_CODE = 'en-us'
TIME_ZONE = 'UTC'
USE_I18N = True
USE_L10N = True
USE_TZ = True
# Static files (CSS, JavaScript, Images)
# https://docs.djangoproject.com/en/1.8/howto/static-files/
STATIC_URL = '/static/'
J'ai essayé le surf l'erreur, mais en vain. Mon code fonctionne très bien dans d'autres machines.
Cette erreur a rien à faire avec sql fichier des migrations ou de workspace.xml?
OriginalL'auteur priya vyas | 2015-08-26
Vous devez vous connecter pour publier un commentaire.
Ouvrir un python shell en cours d'exécution
python manage.py shell
dans votre répertoire de projet.Exécutez les commandes suivantes un à un dans le python shell:
L'une des lignes devrait vous donner un message d'erreur semblable au suivant:
La ligne qui vous donne cette erreur est l'absence de module est de vous donner le problème.
À trouver le chemin d'accès où les modules sont recherchés, ne
Alternativement, si vous ne savez pas comment utiliser le python, shell, vous pouvez simplement supprimer les lignes suivantes dans votre
settings.MIDDLEWARE_CLASSES
un à la fois jusqu'à ce qu'il n'y a pas d'erreur plus:Viens de réinstaller le package qui vous a donné l'erreur.
django.contrib.auth.middleware
->django
corsheaders.middleware
->corsheaders
oauth2_provider.middleware
->oauth2_provider
Merci de fournir une "saine" approche du problème. J'ai eu un poste similaire et vous avez fait ma journée 🙂
Heureux, il a été utile 🙂
OriginalL'auteur user193130
Assurez-vous que vous avez tout le soutien des paquets installés là où ils peuvent être trouvés. J'ai couru dans des problèmes où il y a plusieurs interpréteurs Python installé, et a été, par inadvertance, l'exécution de Django avec un interprète lors de l'installation des packages avec l'autre. L'autre chose que je voudrais vérifier, c'est que vous avez les mêmes versions des paquets sur les deux machines. Attention à
corsheaders.middleware.CorsMiddleware
etoauth2_provider.middleware.OAuth2TokenMiddleware
car ils ne font pas partie de Django.Vous devriez poster une nouvelle question.
OriginalL'auteur John Percival Hackworth