Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/364.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/56.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python ImportError:在Ubuntu11.04服务器上的django项目中,没有名为mysql.base的模块_Python_Mysql_Django_Mysql Python - Fatal编程技术网

Python ImportError:在Ubuntu11.04服务器上的django项目中,没有名为mysql.base的模块

Python ImportError:在Ubuntu11.04服务器上的django项目中,没有名为mysql.base的模块,python,mysql,django,mysql-python,Python,Mysql,Django,Mysql Python,我遵循了中的步骤,并进入了作者解释hot wo设置django项目以使用数据库的部分。我选择了mysql 我在settings.py中的设置是: DATABASES = { 'default': { 'ENGINE': 'mysql', # Add 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'. 'NAME': 'mydatabase',

我遵循了中的步骤,并进入了作者解释hot wo设置django项目以使用数据库的部分。我选择了mysql

我在
settings.py中的设置是:

DATABASES = {
    'default': {
        'ENGINE': 'mysql',               # Add 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'.
        'NAME': 'mydatabase',                  # Or path to database file if using sqlite3.
        'USER': 'myname',                # Not used with sqlite3.
        'PASSWORD': 'mypassword',        # Not used with sqlite3.
        'HOST': '',                      # Set to empty string for localhost. Not used with sqlite3.
        'PORT': '',                      # Set to empty string for default. Not used with sqlite3.
    }
}
尝试启动服务器时,将打印以下消息:

Validating models...

Traceback (most recent call last):
  File "/home/me/workspace/mysite/src/mysite/manage.py", line 14, in <module>
    execute_manager(settings)
  File "/usr/local/lib/python2.7/dist-packages/django/core/management/__init__.py", line 442, in execute_manager
    utility.execute()
  File "/usr/local/lib/python2.7/dist-packages/django/core/management/__init__.py", line 379, in execute
    self.fetch_command(subcommand).run_from_argv(self.argv)
  File "/usr/local/lib/python2.7/dist-packages/django/core/management/base.py", line 191, in run_from_argv
    self.execute(*args, **options.__dict__)
  File "/usr/local/lib/python2.7/dist-packages/django/core/management/base.py", line 220, in execute
    output = self.handle(*args, **options)
  File "/usr/local/lib/python2.7/dist-packages/django/core/management/commands/runserver.py", line 67, in handle
    self.run(*args, **options)
  File "/usr/local/lib/python2.7/dist-packages/django/core/management/commands/runserver.py", line 78, in run
    self.inner_run(*args, **options)
  File "/usr/local/lib/python2.7/dist-packages/django/core/management/commands/runserver.py", line 88, in inner_run
    self.validate(display_num_errors=True)
  File "/usr/local/lib/python2.7/dist-packages/django/core/management/base.py", line 243, in validate
    from django.core.management.validation import get_validation_errors
  File "/usr/local/lib/python2.7/dist-packages/django/core/management/validation.py", line 3, in <module>
    from django.contrib.contenttypes.generic import GenericForeignKey, GenericRelation
  File "/usr/local/lib/python2.7/dist-packages/django/contrib/contenttypes/generic.py", line 7, in <module>
    from django.db import connection
  File "/usr/local/lib/python2.7/dist-packages/django/db/__init__.py", line 27, in <module>
    connection = connections[DEFAULT_DB_ALIAS]
  File "/usr/local/lib/python2.7/dist-packages/django/db/utils.py", line 81, in __getitem__
    backend = load_backend(db['ENGINE'])
  File "/usr/local/lib/python2.7/dist-packages/django/db/utils.py", line 23, in load_backend
    return import_module('.base', backend_name)
  File "/usr/local/lib/python2.7/dist-packages/django/utils/importlib.py", line 35, in import_module
    __import__(name)
ImportError: No module named mysql.base
正在验证模型。。。
回溯(最近一次呼叫最后一次):
文件“/home/me/workspace/mysite/src/mysite/manage.py”,第14行,在
执行\u管理器(设置)
文件“/usr/local/lib/python2.7/dist-packages/django/core/management/___init__.py”,第442行,在执行管理器中
utility.execute()
文件“/usr/local/lib/python2.7/dist-packages/django/core/management/__init__.py”,第379行,在execute中
self.fetch_命令(子命令)。从_argv(self.argv)运行_
文件“/usr/local/lib/python2.7/dist-packages/django/core/management/base.py”,第191行,从_argv运行
self.execute(*args,**选项._dict__;
文件“/usr/local/lib/python2.7/dist packages/django/core/management/base.py”,第220行,在execute中
输出=self.handle(*args,**选项)
文件“/usr/local/lib/python2.7/dist packages/django/core/management/commands/runserver.py”,第67行,在handle中
self.run(*args,**选项)
文件“/usr/local/lib/python2.7/dist-packages/django/core/management/commands/runserver.py”,第78行,运行中
self.internal_run(*args,**选项)
文件“/usr/local/lib/python2.7/dist packages/django/core/management/commands/runserver.py”,第88行,在内部运行
self.validate(display\u num\u errors=True)
文件“/usr/local/lib/python2.7/dist packages/django/core/management/base.py”,第243行,在validate中
从django.core.management.validation导入获取\u验证\u错误
文件“/usr/local/lib/python2.7/dist packages/django/core/management/validation.py”,第3行,在
来自django.contrib.contenttypes.generic导入GenericForeignKey,GenericRelation
文件“/usr/local/lib/python2.7/dist packages/django/contrib/contenttypes/generic.py”,第7行,在
从django.db导入连接
文件“/usr/local/lib/python2.7/dist-packages/django/db/_-init__.py”,第27行,在
连接=连接[默认\u DB\u别名]
文件“/usr/local/lib/python2.7/dist packages/django/db/utils.py”,第81行,在__
后端=加载\u后端(db['ENGINE'])
文件“/usr/local/lib/python2.7/dist packages/django/db/utils.py”,第23行,在load_后端
返回导入_模块('.base',后端_名称)
文件“/usr/local/lib/python2.7/dist packages/django/utils/importlib.py”,第35行,在导入模块中
__导入(名称)
ImportError:没有名为mysql.base的模块
我在谷歌上搜索了一下,发现如果你使用旧版本的MySQLd,这条消息可以打印出来。所以我确定我得到了最新的版本。并在交互式python shell中测试了导入。很好

还有其他建议吗,为什么这不起作用


我正在开发一个新安装的Ubuntu 11.04版本(Windows7中的Wubi),如果这很重要的话

正确的是
'django.db.backends.mysql'

您运行的是哪个版本的django?1.2.5从
python django
包中?1.3从项目网站?查看
django.db.utils.load\u backend()
的源代码,我认为您应该使用
'django.db.backends.mysql'
,而不仅仅是
'mysql'
。这可能只会给您一条不同的错误消息,但更有用。@Tim Yates:我使用的版本是
'django.db.backends.mysql'
。我昨天从后备箱里查了出来,就像书中推荐的那样。将
ENGINE
设置为
'django.db.backends.mysql'
而不是
'mysql'
完成了这项工作。非常感谢,@Tim。如果后端设置在
manage.py inspectdb
之后产生此错误,该怎么办
django.core.exceptions.impropertlyconfigured:'django.db.backends.mysql'不是可用的数据库后端。