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