Sqlalchemy запрос не принимает - PullRequest
       22

Sqlalchemy запрос не принимает

1 голос
/ 22 декабря 2009

Я пытаюсь создать простую функцию уникального имени пользователя для использования в схеме Formencode. Вот функция:

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  

Проблема в том, что запрос генерируется, но никогда не попадает в базу данных. Пользовательская переменная просто содержит сгенерированный запрос, а не результаты запроса. Как мне исправить это? Спасибо.

1 Ответ

4 голосов
/ 22 декабря 2009

Должно быть:

user = DBSession.query(User.user_name).filter(User.username==value).first()

также: это User.user_name или User.username?

...