【发布时间】:2013-06-10 13:17:00
【问题描述】:
我目前有多个具有相同表和列(但内部数据不同)的数据库。很明显,我需要使用绑定来访问所有这些,但这显然不像这样做那么简单:
class WhateverTable(db.Model):
__tablename__ = 'whatevertable'
whatever = db.Column(db.String(255))
def __init__(self, bind=None):
self.__bind_key__ = bind
然后再调用:
WhateverTable(bind='bind_key_here').query.filter_by(whatever='whatever').first()
有没有办法让我轻松做到这一点?我试过从一个表类继承,然后在那里定义绑定,虽然这可行,但它确实不可扩展。
编辑:这 :Flask inherited classes of tables in multiple identical databases using __bind_key__ 可以满足我的需求,但我不想拥有不同的类,因为如果我添加一个新数据库,我将不得不创建一组新的类和关系。
【问题讨论】:
-
找到路了吗?
-
我也有同样的要求。你是怎么度过这个难关的?
标签: python sqlalchemy flask bind flask-sqlalchemy