Уведомления

Группа в Telegram: @pythonsu

#1 Июль 26, 2014 06:40:53

plusplus
От:
Зарегистрирован: 2009-01-05
Сообщения: 418
Репутация: +  15  -
Профиль   Отправить e-mail  

sqlalchemy. Работа с bind-ами во flask.

Мне нужно работать с двумя разными бд: ‘default’ и ‘sus’. Пользуюсь обёрткой flask-sqlalchemy. В ней можно сделать так:

class Person(db.Model):
    __tablename__ = 'persons'
    __bind_key__ = 'sus'
    id = Column(Integer, primary_key=True)
    name = Column(Unicode)
Person.query.get(5)

И всё ок, модель берется из базы ‘sus’. Но я не могу найти способ как в этой базе вызвать sql-функцию.
from flask.ext.sqlalchemy import SQLAlchemy
from sqlalchemy import func
db = SQLAlchemy(app)
db.session.query(func.do_something(some_params)).first()
db.session.commit()

Сессия настроена на базу ‘default’. Как её переключить на базу ‘sus’, кто-нибудь знает?



Отредактировано plusplus (Июль 26, 2014 06:41:19)

Офлайн

#2 Июль 28, 2014 11:42:05

plusplus
От:
Зарегистрирован: 2009-01-05
Сообщения: 418
Репутация: +  15  -
Профиль   Отправить e-mail  

sqlalchemy. Работа с bind-ами во flask.

Нашел вот такое решение:

db.session.bind = db.get_engine(db.get_app(), bind='sus')



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version