класса, чтобы явно не писать async with self.session_pool() as session: в каждом методе? Пока мысли только в сторону декоратора класса, в котором подменять методы на декорированные, либо писать метакласс, делающий то же. Что посоветуете?
Забыть декораторы и положить в self не пул, а сессию
Объект у меня синглтон, сессия тогда будет одна на всё приложение и жить слишком долго
https://t.me/advice17/16
И чем заменить? Чем плохо то, что я использую один пул сессий на всю программу?
Синглтон заменить на dependency injection. А класс который реализует методы работы с бд отвязать от пула и привязать к сессии
А где можно почитать про этот паттерн? Или может минимальный пример что это вообще
Dependency Injection это не то чтобы паттерн. Это скорее концепция
Я глянул что это, в целом я так и делаю. Но сомнительно использовать одну сессию во всем приложении
Ты мой пост выше прочитал?
Да, прочитал. Мне одну сессию на всю программу использовать всё-таки или пул? В любом случае экземпляр класса будет один на приложение, а в него на старте кладётся соединение с БД. Только вот вопрос пул класть и каждый раз сессию открывать или одну сессию класть
не знаю о чем вы конкретно, но я делал на каждый метод сессия открывается и закрывается, используя scoped_session()
Обсуждают сегодня