python展示数据库视图_python – 每个视图更改数据库并访问每个视图的多个数据库...

为每个请求配置和连接对我来说似乎很多工作.我将在我的模型模块中创建四个会话处理程序,并从中进行选择.

例:

models/__init__.py

DBSession1 = scoped_session(sessionmaker(extension=ZopeTransactionExtension()))

DBSession2 = scoped_session(sessionmaker(extension=ZopeTransactionExtension()))

DBSession3 = scoped_session(sessionmaker(extension=ZopeTransactionExtension()))

DBSession4 = scoped_session(sessionmaker(extension=ZopeTransactionExtension()))

metadata1 = MetaData()

metadata2 = MetaData()

metadata3 = MetaData()

metadata4 = MetaData()

def initialize_sql(engines, drop_db=False):

DBSession1.configure(bind=engine[0])

DBSession2.configure(bind=engine[1])

DBSession3.configure(bind=engine[2])

DBSession4.configure(bind=engine[3])

metadata1.bind = engine[0]

metadata2.bind = engine[1]

metadata3.bind = engine[2]

metadata4.bind = engine[3]

然后在你看来:

from mypackage.models import DBSession1, DBSession2, DBSession3, DBSession4

def site_orders(request)

site = request.matchdict['site']

dbsession = globals().get("DBSession%d" % site)

orders = dbsession.query(Order).order_by(Order.cdate.desc())[:100]

return dict(orders=orders, pagetitle=(site+" Orders"))

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值