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