如何正确格式化django settings.py?

时间:2011-01-29 14:02:46

标签: database django

我是django初学者,正在阅读“Practical django Projects”。该书指示插入以下内容 -

DATABASE_ENGINE = ‘sqlite3′

但是,在settings.py文件中,DATABASES是一个字典 -

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.', # Add 'postgresql_psycopg2', 'postgresql', 'mysql', 'sqlite3' or 'oracle'.
        'NAME': '',                      # Or path to database file if using sqlite3.
        'USER': '',                      # Not used with sqlite3.
        'PASSWORD': '',                  # 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.
    }
}

它是不同的版本还是我弄错了?另外,请在线推荐您认为可以帮助我学习django的任何教程。

2 个答案:

答案 0 :(得分:6)

您所遵循的教程适用于Django< = 1.1,在1.2中,他们更改了数据库设置的格式,以便允许所有新的多个数据库。如果你的教程告诉你要创建这样的东西:

DATABASE_ENGINE = 'sqlite3'
DATABASE_NAME = '/path/to/your/dev.db'

然后,这是在1.2语法中实现sqlite3数据库所需的内容:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': '/path/to/your/dev.db',
    }
}

总是看到Django documentation on the matter以获取更多信息,并且为了证明我在1.1版本中的说法,请查看docs from that version

答案 1 :(得分:1)

是的,它是一个不同的版本。从1.2开始,用于指定数据库参数的约定已更改为提供多数据库支持(尽管先前的约定也应该起作用,以保持向后兼容性)。你应该看看official Django documentation。它是最新的,非常有益健康。