Форум сайта python.su
Пытаюсь использовать sqlalchemy на прямую, без flask-sqlalchemy. Появилась необходимость подключить flask-admin, возможно-ли это сделать без flask-sqlalchemy?
Офлайн
Да.
P.S. Респект. Давно сам юзаю raw sqlalchemy.
Отредактировано 4kpt_IV (Июль 10, 2016 19:28:57)
Офлайн
4kpt_IV
А в какую сторону копать? Как это сделать?
Офлайн
Опишите, зачем нужно и кину ссылку. Просто есть два подхода к решению проблемы.
Офлайн
Немного не понял, что “зачем нужно”?
В приложение хочу добавить админку из, которой можно было-бы, что-то быстро сделать с базой, но так как пошёл не по проторенной дорожке, то не знаю как подключить модуль.
Офлайн
Поясню. Чаще всего бывает, что модели нужны еще и для другого приложения, которое не является фласком. Торнадо там или RQ. Или просто разработчиков раздражает взаимный импорт.
По Вашему вопросу все равно есть 2 возможности.
1. Все же подключить flask-alchemy.
В этом случае нужно немного костыльнуть. В before_request получать session из flask-alchemy и использовать его дальше явно. А в моделях прописать импорт Base из стороннего модуля. В этом случае при создании конфигурации (инстанса Вашего app) можно импортировать модуль с Base и подменять в нем Base - base'ом из flask-alchemy. При этом модели можно вообще не менять. И внутри все будет вести себя как надо.
2. Более сурово, но есть ньюансы. В этом случае в админку передается сессия и можно просто подключать модели.
Прямо ссылка…
P.S. Если еще нужно для flask-debugtoolbar, то там вообще костыль на 1 строку. Напишите, если будет нужно, кину кусок кода.
Отредактировано 4kpt_IV (Июль 10, 2016 19:59:02)
Офлайн
4kpt_IV
Спасибо. Воспользовался вторым вариантом, самый простейший опробованный случай работает. А какие нюансы при таком подходе есть?
Офлайн
Я уже не помню. Там были проблемы со связями у которых стояли разные спецнастройки типа каскаде и других. Но это было уже давно и, может, исправили.
Офлайн