fresco/sqlalchemy集成

fresco-sqlalchem的Python项目详细描述


将sqlalchemy添加到应用程序中

使用fresco_sqlalchemy.SQLAlchemy将应用程序配置为与一起使用 炼金术。默认情况下,从 应用程序,并将wsgi中间件添加到应用程序中以管理sqlalchemy 会话:

from fresco import FrescoApp
from fresco_sqlalchemy import SQLAlchemy

# Create a new Fresco app
app = FrescoApp()

# Connection info is loaded from your application configuration
app.options.SQLALCHEMY = {
    'default': 'driver://user:password@localhost/database',
}

sqlalchemy = SQLAlchemy(app)

如果您愿意,可以将配置变量调用其他名称:

app.options.DATABASES = {
    'default': 'driver://user:password@localhost/database',
}
sqlalchemy = SQLAlchemy(app, options_key='DATABASES')

或者完全跳过此步骤,直接向 构造器:

sqlalchemy = SQLAlchemy(
    app,
    databases={'default': 'driver://user:password@localhost/database',})

访问会话

您可以直接在SQLAlchemy对象上访问sqlalchemy会话:

sqlalchemy = SQLAlchemy(app)
session = sqlalchemy.getsession()
session.query(...)

或通过fresco.context

from fresco import context
session = context.sqlalchemy.default
session.query(...)

多连接支持

您可以指定任意多个数据库连接URL:

app.options.SQLALCHEMY = {
    'staging': 'driver://user:password@localhost/staging_db',
    'production': 'driver://user:password@localhost/production_db',
}

使用getsession

sqlalchemy = SQLAlchemy(app)
sqlalchemy.getsession('staging')

或来自fresco.context

default_session = context.sqlalchemy.staging
cms_session = context.sqlalchemy.production

发动机配置

sqlalchemy构造函数的额外参数传递给sqlalchemy的 create_engine函数。这使得可以指定选项,例如 echo=True记录由sqlalchemy生成的所有sql查询:

sqlalchemy = SQLAlchemy(app, echo=True)

0.1(发布日期:2016-06-30)

  • 初始版本

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何使用Spring和JSF向客户端授予临时权限   java除了Array/ArrayList之外,还有其他保存矩阵元素的方法吗   java BeanValidation不适用于单选按钮   通过java程序连接到配置单元数据库时出错   java如何使用maven解决二级依赖关系   JfreeChart/Java中带有图例的数据表   合并数组时发生java运行时错误   安全性如何在JavaEE中保护WebSocket端点?   java有没有一种方法可以使用insert方法为树插入值   java编程“静态”的另一种方式:代码可以吗?   java阅读文本文件时如何跳过3行   %04X在C中的含义以及如何在java中编写   java我如何验证一个方法不是仅在一个测试范围内对模拟调用的?   java如何在mac中使用启动appium desktop 1.6.1。球棒   仅匹配最多10位小数的java正则表达式