Допустим, я получил запрос, подобный этому ...
baseQuery = MyDbObj.query.filter_by(someProp='foo')
Если на более позднем этапе я расширю этот запрос чем-то другим (скажем, другим фильтром) ...
derivedQuery = baseQuery.filter_by(anotherProp='bar')
приведет ли это к внутреннему изменению исходного запроса или создан новый экземпляр запроса?
Справочная информация: Мой вариант использования состоит в том, что я получил несколько вариантов, которые отличаются только одним фильтром. Прямо сейчас есть тонна вставленного в копию кода запроса (не моя вина, я унаследовал эту кодовую базу), которую я очищаю. Для случаев, когда в конечном итоге выполняется только один запрос, мне все равно, будет ли изменен исходный запрос. Однако у меня также есть случаи, когда выполняются два запроса, поэтому здесь важно, чтобы я мог расширить два запроса из базового запроса, не мешая друг другу.
Хотя, возможно, здесь можно решить эту фильтрацию в самом python и не делать два запроса к БД, во-первых (я оставлю это как второй вариант).