我目前有多个具有相同表和列(但内部数据不同)的数据库。很明显,我需要使用绑定来访问所有这些,但这显然不像这样做那么简单:
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 使用 __bind_key__ 继承多个相同数据库中的表类 https://stackoverflow.com/questions/6872500/flask-inherited-classes-of-tables-in-multiple-identical-databases-using-bind-k?rq=1做了我想要的事情,但我不想有不同的类,因为如果我添加一个新的数据库,我将不得不创建一组新的类和关系。
Flask-SQLAlchemy 2.1添加了对binds会话中的参数 https://github.com/mitsuhiko/flask-sqlalchemy/commit/19c8ce02db895755feb885de42b2497d6f35059d这应该做你想做的事。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)