170 похожих чатов

Ребят, очень интересный вопрос про алхимию. У меня есть несколько

сервисов и модельки ( структура приложения на фото )

Все модели наследуются от обего Base: declarative_base

И у меня нет особо адекватных идей как добавить к моделям query не сделав БД сессию глобальной

Соответственно, как поступить?

P.s.: query нужно именно у модели ввиду того что фласк-либы так и жрут модели ‘Model.query.filter(…)…’

14 ответов

17 просмотров

https://flask-russian-docs.readthedocs.io/ru/latest/patterns/sqlalchemy.html

Cate Francisco de la-Murrito 🧬- Автор вопроса

Был там. Либо там глобальная сессия либо лишь 1 сервис и это вообще не играет роли

Cate Francisco de la-Murrito 🧬- Автор вопроса

Либо импортируют сессию из сервиса и кидают в таблицу — но у меня то две сессии может быть )

Cate Francisco de la-Murrito 🧬- Автор вопроса

повторю вопрос ( ответа не получил(

Cate Francisco de la-Murrito 🧬- Автор вопроса

Может я плохо объяснил проблему? Пожалуй попытаю удачу в третий раз и буду костылять сам

попробуй спросить https://t.me/sqlalchemy_help

А не нужно так делать. Прибивая гвоздями сессию к модели ты делаешь ее внезапно глобальной.

Не путай квери и сессию. Модель не должна знать как и где запускать запросы. Она отвечает за хранение данных и частично за конструирование самих запросов.

Cate Francisco de la-Murrito 🧬- Автор вопроса

Не путаю, но речь не об этом

Cate Francisco de la-Murrito 🧬- Автор вопроса

Тогда как делать? Везде наследуюсь от declarative_base. Если я вздумаю где-то свою сессию поднять(как это и должно быть — 1 сервис - 1 сессия), фласк начнет ругаться и кричать, что у Model отсутствует query

начнем с того что фласк ничего не знает об алхимии

Cate Francisco de la-Murrito 🧬- Автор вопроса

Зато знают его Flask-* либы

Слушай. А я чёт не могу понять. Вот они просто берут scoped_session и всё https://pythonhosted.org/Flask-Security/quickstart.html#id4 И нигде не закрывают её. Оно же всё сломается при первой обвалившейся транзакции?

Cate Francisco de la-Murrito 🧬- Автор вопроса

Что ты под «сломается» подразумеваешь?

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта