flipbit03 / sqlalchemy-easy-softdelete

Easily add soft-deletion to your SQLAlchemy Models
Other
62 stars 13 forks source link

Support "Union" queries #3

Closed silviamichele closed 2 years ago

silviamichele commented 2 years ago

Description

Tenho alguns filtros de texto que após a instalação quebraram, o erro retornado é seguinte:

Unsupported object <class 'sqlalchemy.sql.selectable.Subquery'> in statement.froms

Os filtros utilizam a seguinte abordagem:

query = self.session.query(Artigo)
...
artigos = query.filter(Artigo.titulo.ilike(texto))
artigos_por_autor = query.join(Autor).filter(Autor.nome.ilike(texto))
lista_artigos = [artigos, artigos_por_autor]
query = lista_artigos[0].union(*lista_artigos[1:])
...
query = query.all()

Tentei algumas soluções com: unionall, expect, expect_all, e outras estruturas de união, mas continua retornando erro de subquery (já testei .subquery e outras funções que indicam subordinação) ou outros aleatórios relacionado a formatação.