【问题标题】:Multiple databases in PyramidPyramid 中的多个数据库
【发布时间】:2014-01-17 23:30:59
【问题描述】:

首先,我是 Python 新手。

现在已经不碍事了。我正在尝试访问 2 个不同数据库上的数据并在一个视图上显示信息。

http://docs.pylonsproject.org/projects/pyramid_cookbook/en/latest/pylons/models.html#multiple-databases

这^ 在第一段之后似乎不完整。我的第一个数据库可以正常工作且完整,而且效果很好。现在我正在尝试合并第二个数据库。

如果我有第二个数据库,我在任何地方都找不到我的 development.ini 文件应该是什么样子。我有这个:

sqlalchemy.url = mssql+pyodbc://[databasestuffsredacted]

我想到了类似的东西

db2 = mssql+pyodbc://[seconddbstuffsredacted]

(两个数据库使用相同的类型和驱动程序)来自previous stack overflow question,有人提到:

DBSession2 = orm.scoped_session(orm.sessionmaker(extension=ZTE())

但是,这到底是如何与我的第二个数据库对话的。我在这里遗漏了一个关键部分,我认为它应该在第一段之后的上述文档中。

【问题讨论】:

    标签: python sqlalchemy pyramid


    【解决方案1】:

    你可以把它写在一个模块里

    engine= create_engine('postgresql://user:pswd@localhost/db1')
    DBSession = scoped_session(sessionmaker(extension=ZopeTransactionExtension()))
    DBSession.configure(bind=engine)
    
    engine2= create_engine('postgresql://user:pswd@localhost/db2')
    DBSession2 = scoped_session(sessionmaker(extension=ZopeTransactionExtension()))
    DBSession2.configure(bind=engine2)
    

    【讨论】:

    • 我认为信息会进入我的 init.py,所以我会从 development.ini 中删除数据库信息?
    • 你可以在models.py中添加它,或者创建包模型然后在里面写一个新的模块。
    猜你喜欢
    • 1970-01-01
    • 2016-03-14
    • 2015-04-20
    • 2013-04-18
    • 2012-11-29
    • 2015-02-06
    • 2012-12-29
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多