4

我正在尝试在 Flask 中开发一个 Web 应用程序,我注意到如果我想使用 SQLite3 作为我的数据库,那么我必须输入

DATABASE = 'flaskr.json'

但是,如果我想为我的数据库实现使用 SQLAlchemy,我必须使用类似的东西

DATABASE = 'sqlite:////Users/jake/repos/flaskralchemy/flaskr.db

这种变化有什么意义?此外,在我看到的所有示例中,没有人在他们的服务器上创建实际的数据库。到底是怎么回事?

提前致谢。

4

2 回答 2

13

我有点不清楚你在问什么,你在哪里设置这个 DATABASE 值以及 flaskr.json 值来自哪里。但我会试一试,希望它会有一些用处。

因此,显然,您需要告诉您的应用程序如何连接到您的数据库。您通常在应用程序配置中进行设置,如下所示:

app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:////tmp/test.db'

对于 SQLlite,您只需要一个文件路径(如上)对于 MySQL,我的应用程序设置如下:

app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql+pymysql://username:password@server.site.com/database'

您可以在 SQLAlchemy 文档中阅读比您想知道的更多的内容:

http://docs.sqlalchemy.org/en/latest/core/engines.html#database-urls

另外,你看过 Flask-SQLAlchemy 插件吗?它为您提供了一些很好的工具来处理这个问题。

http://flask-sqlalchemy.pocoo.org/2.3/quickstart/#a-minimal-application

于 2012-11-21T20:43:33.160 回答
1

对于 windows 使用这个

app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///E:\\account-verification-flask\\src\\example.db'
# sqlite:///absolute path

了解更多信息。访问这里

于 2017-05-21T17:46:35.710 回答