flask 配置
SQLAlchemy 相关
SQLALCHEMY_COMMIT_ON_TEARDOWN
设置是否在每次请求结束后自动提交数据库中的变动。如果该常量为True,则每次请求结束后都会自动提交数据库中的变动。
1 |
|
源码
1 |
|
SQLALCHEMY_DATABASE_URI
用于连接数据的数据库。其格式为:mysql://username:password@server/db?编码
注意默认使用mysqldb连接数据库,要使用pymysql就需要用mysql+pymysql的格式;
1 |
|
SQLALCHEMY_BINDS
一个映射绑定 (bind) 键到 SQLAlchemy 连接 URIs 的字典。他可以用来连接多个数据库。
1 |
|
上面除了默认的连接外,又连接了两个数据库,分别命名users,appmeta。在创建模型的时候可以为相应的操作定制化;
更多的详细参考:http://www.pythondoc.com/flask-sqlalchemy/binds.html#binds
SQLALCHEMY_ECHO
如果设置成 True,SQLAlchemy 将会记录所有发到标准输出(stderr)的语句,这对调试很有帮助;默认为false;
1 |
|
SQLALCHEMY_RECORD_QUERIES
可以用于显式地禁用或者启用查询记录。查询记录 在调试或者测试模式下自动启用。一般我们不设置。
SQLALCHEMY_NATIVE_UNICODE
可以用于显式地禁用支持原生的unicode。
SQLALCHEMY_POOL_SIZE
数据库连接池的大小。默认是数据库引擎的默认值 (通常是 5)。
1 |
|
SQLALCHEMY_TRACK_MODIFICATIONS
如果设置成 True (默认情况),Flask-SQLAlchemy 将会追踪对象的修改并且发送信号。这需要额外的内存,如果不必要的可以禁用它。
1 |
|
SQLALCHEMY_MAX_OVERFLOW
控制在连接池达到最大值后可以创建的连接数。当这些额外的连接使用后回收到连接池后将会被断开和抛弃。保证连接池只有设置的大小;
1 |
|
SQLALCHEMY_POOL_TIMEOUT
指定数据库连接池的超时时间。默认是 10。
1 |
|
SQLALCHEMY_POOL_RECYCLE
自动回收连接的秒数,默认值 7200(2小时),也就是说如果连接池中有连接2个小时被闲置,那么其会被断开和抛弃;并创建新的连接放到连接池中。默认情况下MySQL会自动移除 time_waitout 或者超过 time_waitout 时间的连接。
1 |
|