Consulta de Sqlalchemy não cometendo
-
20-09-2019 - |
Pergunta
Estou tentando criar uma função simples de nome de usuário exclusiva para uso em um esquema de formação. Aqui está a função:
class UniqueUsername(formencode.FancyValidator):
def _to_python(self, value, state):
user = DBSession.query(User.user_name).filter(User.username==value)
if user is not None:
raise formencode.Invalid(
'That username already exists', value, state)
return value
O problema é que a consulta é gerada, mas nunca atinge o banco de dados. A variável do usuário simplesmente contém a consulta gerada, não os resultados da consulta. Como faço para consertar isso? Muito obrigado.
Solução
Deveria ser:
user = DBSession.query(User.user_name).filter(User.username==value).first()
Além disso: é user.user_name ou user.username?
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow