2016-12-01 51 views
1

創建用戶我有Django的1.10與MySQL,每次我輸入admin時間,我儘量讓用戶我得到這個錯誤:Django的:OperationalError當我嘗試從管理

enter image description here

的東西是我可以創建任何其他模型,如果我從命令行創建超級用戶,我可以編輯該用戶,但是當我按下「添加用戶」時,出現此錯誤。我試着刪除數據庫並重新做兩次。

這裏是我的settings.py:

import os 

BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) 

DEBUG = True 

ALLOWED_HOSTS = [] 

INSTALLED_APPS = [ 
    # django apps 
    'django.contrib.admin', 
    'django.contrib.auth', 
    'django.contrib.contenttypes', 
    'django.contrib.sessions', 
    'django.contrib.messages', 
    'django.contrib.staticfiles', 

    # our apps 
    'authentication', 
    'homepages', 
    'school' 
] 

MIDDLEWARE_CLASSES = [ 
    'django.middleware.security.SecurityMiddleware', 
    'django.contrib.sessions.middleware.SessionMiddleware', 
    'django.middleware.common.CommonMiddleware', 
    'django.middleware.csrf.CsrfViewMiddleware', 
    'django.contrib.auth.middleware.AuthenticationMiddleware', 
    'django.contrib.auth.middleware.SessionAuthenticationMiddleware', 
    'django.contrib.messages.middleware.MessageMiddleware', 
    'django.middleware.clickjacking.XFrameOptionsMiddleware', 
] 

ROOT_URLCONF = 'config.urls' 

TEMPLATES = [ 
    { 
     'BACKEND': 'django.template.backends.django.DjangoTemplates', 
     'DIRS': [ 
      BASE_DIR + '/templates/' 
     ], 
     'APP_DIRS': True, 
     'OPTIONS': { 
      'debug': DEBUG, 
      'context_processors': [ 
       'django.template.context_processors.debug', 
       'django.template.context_processors.request', 
       'django.contrib.auth.context_processors.auth', 
       'django.contrib.messages.context_processors.messages', 
      ], 
     }, 
    }, 
] 

WSGI_APPLICATION = 'config.wsgi.application' 

DATABASES = { 
    'default': { 
     'ENGINE': 'django.db.backends.mysql', 
     'NAME': 'isj', 
     'USER': 'test_user', 
     'PASSWORD': 'password', 
     'HOST': '', # Empty for localhost through domain sockets or '127.0.0.1' for localhost through TCP. 
     'PORT': '', # Set to empty string for default. 
    } 
} 

AUTH_PASSWORD_VALIDATORS = [ 
    { 
     'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator', 
    }, 
    { 
     'NAME': 'django.contrib.auth.password_validation.MinimumLengthValidator', 
    }, 
    { 
     'NAME': 'django.contrib.auth.password_validation.CommonPasswordValidator', 
    }, 
    { 
     'NAME': 'django.contrib.auth.password_validation.NumericPasswordValidator', 
    }, 
] 

LANGUAGE_CODE = 'en-us' 

TIME_ZONE = 'UTC' 

USE_I18N = True 

USE_L10N = True 

USE_TZ = True 

STATIC_URL = '/static/' 
STATICFILES_DIRS = (os.path.join('static'),) 
+1

你能否用你的settings.py來更新你的問題? –

+0

你有它:) –

+0

行「異常值」說:「SAVEPOINT ...不存在」。這個問題可能是相關的:http://stackoverflow.com/q/13728843/293494 – mkj

回答

0

就我而言,我發現,根本原因是MySQL-Python數據庫驅動程序和解決方法是使用其他MySQL驅動的Python(如mysqlclient)。

$ pip uninstall MySQL-Python 
$ pip install mysqlclient 

MySQL-python原來是很老的(最後一次提交的是7年前)。 mysqlclient是它的現代版本,有很多改進和錯誤修復。

有關我的修復和發現here的更多詳細信息。