Número de resultados do Flask-SQLAlchemy na consulta
-
21-12-2019 - |
Pergunta
Fiquei me perguntando se alguém sabe como gerar o número de resultados de uma consulta em um modelo de frasco.
Exemplo de código de visualização:
products = Product.query.all()
No modelo, seria útil poder fazer apenas:
{{ products.count() }}
Já existe alguma maneira de fazer isso ou alguém tem um filtro escrito que faça isso?
Saúde,
Solução
Seu products
variável de modelo é uma lista regular.Você pode usar o length
filter para obter seu tamanho:
{{ products|length }}
Mas se você estiver trabalhando com resultados paginados, isso lhe dará o tamanho de uma página.Se você quiser o tamanho de toda a consulta, precisará ligar count()
no objeto de consulta.Por exemplo:
product_count = Product.query.count()
Em seguida, passe isso para o modelo como um argumento adicional.Ou se preferir você pode passar o objeto de consulta para o modelo e chamar count()
de lá:
{{ product_query.count() }}
Outras dicas
você pode usar len(products)
, é a função standart python e funciona para mim