Уведомления

Группа в Telegram: @pythonsu

#1 Июль 10, 2016 18:19:08

alex925
Зарегистрирован: 2015-01-08
Сообщения: 204
Репутация: +  14  -
Профиль   Отправить e-mail  

Flask-Admin без flask-sqlalchemy

Пытаюсь использовать sqlalchemy на прямую, без flask-sqlalchemy. Появилась необходимость подключить flask-admin, возможно-ли это сделать без flask-sqlalchemy?

Офлайн

#2 Июль 10, 2016 19:28:07

4kpt_IV
Зарегистрирован: 2016-01-08
Сообщения: 999
Репутация: +  49  -
Профиль   Отправить e-mail  

Flask-Admin без flask-sqlalchemy

Да.

P.S. Респект. Давно сам юзаю raw sqlalchemy.

Отредактировано 4kpt_IV (Июль 10, 2016 19:28:57)

Офлайн

#3 Июль 10, 2016 19:41:55

alex925
Зарегистрирован: 2015-01-08
Сообщения: 204
Репутация: +  14  -
Профиль   Отправить e-mail  

Flask-Admin без flask-sqlalchemy

4kpt_IV
А в какую сторону копать? Как это сделать?

Офлайн

#4 Июль 10, 2016 19:44:04

4kpt_IV
Зарегистрирован: 2016-01-08
Сообщения: 999
Репутация: +  49  -
Профиль   Отправить e-mail  

Flask-Admin без flask-sqlalchemy

Опишите, зачем нужно и кину ссылку. Просто есть два подхода к решению проблемы.

Офлайн

#5 Июль 10, 2016 19:49:25

alex925
Зарегистрирован: 2015-01-08
Сообщения: 204
Репутация: +  14  -
Профиль   Отправить e-mail  

Flask-Admin без flask-sqlalchemy

Немного не понял, что “зачем нужно”?
В приложение хочу добавить админку из, которой можно было-бы, что-то быстро сделать с базой, но так как пошёл не по проторенной дорожке, то не знаю как подключить модуль.

Офлайн

#6 Июль 10, 2016 19:58:18

4kpt_IV
Зарегистрирован: 2016-01-08
Сообщения: 999
Репутация: +  49  -
Профиль   Отправить e-mail  

Flask-Admin без flask-sqlalchemy

Поясню. Чаще всего бывает, что модели нужны еще и для другого приложения, которое не является фласком. Торнадо там или 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)

Офлайн

#7 Июль 10, 2016 20:18:47

alex925
Зарегистрирован: 2015-01-08
Сообщения: 204
Репутация: +  14  -
Профиль   Отправить e-mail  

Flask-Admin без flask-sqlalchemy

4kpt_IV
Спасибо. Воспользовался вторым вариантом, самый простейший опробованный случай работает. А какие нюансы при таком подходе есть?

Офлайн

#8 Июль 10, 2016 22:42:56

4kpt_IV
Зарегистрирован: 2016-01-08
Сообщения: 999
Репутация: +  49  -
Профиль   Отправить e-mail  

Flask-Admin без flask-sqlalchemy

Я уже не помню. Там были проблемы со связями у которых стояли разные спецнастройки типа каскаде и других. Но это было уже давно и, может, исправили.

Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version