0

我是 Django 新手,我主要在 Rails 中工作。我刚刚分叉了一个朋友项目,并试图让服务器启动并运行。我已经安装了所有要求,当我尝试调用 runserver 时遇到以下错误

└─(06:50 PM Fri Apr 12)─(22 files, 128b)─> ./runserver
Validating models...

Unhandled exception in thread started by <bound method Command.inner_run of       
<  django.contrib.staticfiles.management.commands.runserver.Command object at   
0x10c252f50>>
Traceback (most recent call last):
  File "/Library/Python/2.7/site-packages/django/core/management/commands/runserver.py",
  line 92, in inner_run
    self.validate(display_num_errors=True)
  File "/Library/Python/2.7/site-packages/django/core/management/base.py", line 280, in
  validate
    num_errors = get_validation_errors(s, app)
  File "/Library/Python/2.7/site-packages/django/core/management/validation.py", line 35, 
in get_validation_errors
    for (app_name, error) in get_app_errors().items():
  File "/Library/Python/2.7/site-packages/django/db/models/loading.py", line 166, in
get_app_errors
    self._populate()
  File "/Library/Python/2.7/site-packages/django/db/models/loading.py", line 72, in 
_populate
    self.load_app(app_name, True)
  File "/Library/Python/2.7/site-packages/django/db/models/loading.py", line 96, in 
load_app
    models = import_module('.models', app_name)
  File "/Library/Python/2.7/site-packages/django/utils/importlib.py", line 35, in   
import_module
    __import__(name)
  File "/Users/RobertZyskowski/Applebutter/calendezi/south/models.py", line 2, in <module>
    from south.db import DEFAULT_DB_ALIAS
  File "/Users/RobertZyskowski/Applebutter/calendezi/south/db/__init__.py", line 78, in
<module>
    db = dbs[DEFAULT_DB_ALIAS]
KeyError: 'default'

任何帮助表示赞赏,谢谢!

4

1 回答 1

0

为了让 Django 工作,您必须为其提供设置。Django 正常运行所需的设置之一是DATABASES. 它应该作为 Python 字典提供,在该字典中,Django 会查找default密钥。更多关于这里

您收到的错误意味着 Django 没有使用 key 提供给它的数据库default。这可能有多种原因。一是您的设置文件可能由于各种原因(例如安全性)实际上没有定义设置。在这种情况下,您只需提供该设置,问题就应该得到解决。有关设置的示例配置,请参阅上述文档的链接。第二个原因可能是您可能有多个设置文件,并且您没有向runserver. 我注意到您没有使用该manage.py runserver命令来启动服务器。如果您将尝试该命令,通常您可以提供一个--settings参数:

manage.py runserver --settings=dot.notation.path.to.settings

另外,如果您是 Django 新手,请阅读 Django 教程。它非常好,应该让你很好地开始。教程在这里

于 2013-04-13T11:19:27.647 回答