无法使用django设置sqlite3! :/

时间:2010-08-19 17:02:56

标签: python database django sqlite

我在settings.py模块中,我应该将目录添加到sqlite数据库。我如何知道数据库的位置以及完整目录是什么?

我正在使用Windows 7。

2 个答案:

答案 0 :(得分:3)

数据库目录的绝对路径是您所需要的。对于例如如果您的数据库名为my.db并且位于C:\users\you\,那么:

DATABASE_ENGINE = 'sqlite3'
DATABASE_NAME = 'C:/users/you/my.db' 

更新

AFAIK您不必自己创建数据库。运行syncdb时将创建数据库。数据库可以存在于您希望的任何目录中。如果你想让数据库在你的Django项目目录中,只需相应地改变路径。

例如让我们说你的Django项目位于C:\users\you\myproject\。然后,您将更改您的设置:

DATABASE_ENGINE = 'sqlite3'
DATABASE_NAME = 'C:/users/you/myproject/my.db' 

答案 1 :(得分:1)

如果你不提供完整路径,它将使用settings.py的当前目录, 如果您希望指定静态路径,可以将其指定为:c:/projects/project1/my_proj.db

或者如果你想让它变得动态,你可以使用os.path模块

所以os.path.dirname( file )将为您提供settings.py的路径,因此您可以更改数据库的路径,如os.path.join(os.path.dirname) (文件), 'my_proj.db')