Прослушивание всякий раз, когда в SQLAlchemy создается одна или несколько записей определенного типа - PullRequest
0 голосов
/ 08 января 2020

Всякий раз, когда в моей таблице Sample создается одна или несколько записей, мне нужно запросить их и в результате создать несколько новых строк. Этот запрос был бы намного более эффективным, если бы я получил все измененные / новые образцы в одном go.

На основе документации по событию SQLAlchemy , я мог бы сделать это с событием уровня сеанса как @event.listens_for(session, 'after_flush') или событие уровня картографа, например @event.listens_for(Sample, 'after_insert'). Этот второй метод приятнее, потому что он только уведомляет меня о классе, который мне интересен, но я не должен создавать новые записи в таком хуке, а также он не передает мне весь список образцов, он проходит их по одному. У метода уровня сеанса есть противоположные проблемы, и это раздражает, потому что мне придется вручную отфильтровывать Sample объекты.

Есть ли третий метод, который передал бы мне список Sample с были изменены?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...