SQLALCHEMY_DATABASE_URI:
SQLALCHEMY_DATABASE_URI用于配置默认的数据库连接URI。你可以将其设置为连接到单个数据库的URI。示例:
app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql://username:password@localhost/db_name'
在这里,你需要将username替换为你的数据库用户名,password替换为你的数据库密码,localhost替换为你的数据库主机,db_name替换为你的数据库名。
SQLALCHEMY_BINDS:
SQLALCHEMY_BINDS用于配置多个数据库连接,你可以在这里指定多个数据库连接的URI。这通常用于连接多个数据库。示例:
app.config['SQLALCHEMY_BINDS'] = {
'db1': 'mysql://user1:password1@localhost/db1',
'db2': 'mysql://user2:password2@localhost/db2'
}
在这里,我们定义了两个数据库连接,分别为db1和db2,每个连接有其对应的URI。
db1: 使用MySQL连接,用户名为user1,密码为password1,主机为localhost,数据库名为db1。
db2: 使用MySQL连接,用户名为user2,密码为password2,主机为localhost,数据库名为db2。
在使用这些数据库连接时,你需要在定义数据库模型时指定__bind_key__来选择要使用的数据库连接。例如:
class Model1(db.Model):
__bind_key__ = 'db1'
# Model1 fields and methods
class Model2(db.Model):
__bind_key__ = 'db2'
# Model2 fields and methods
这样,Model1会使用名为db1的数据库连接,Model2会使用名为db2的数据库连接。
使用SQLALCHEMY_DATABASE_URI和SQLALCHEMY_BINDS可以让你轻松配置和管理Flask应用程序中的数据库连接。