Использование самодельных функций в Google App Engine - PullRequest
1 голос
/ 04 декабря 2010

Я пытаюсь создать функцию, которая проверяет, вошел ли пользователь в систему. Я поместил эту функцию за пределы класса главной страницы, и она не выдает ошибок, пока я не попытаюсь использовать ее в insie def get (self)класс MainPage.Функция выглядит следующим образом:

def LoginCheck():
username = self.request.cookies.get('username') 
password = self.request.cookies.get('password')
if username and password:
    checkq = db.GqlQuery("SELECT * FROM Users WHERE username = :1 AND password = :2", username, password)
    checkresult = checkq.get()
    if checkresult is None:
        self.redirect("/wrong")
else:
    self.redirect("/wrong2")

и когда я пытаюсь ее использовать, она возвращает:

line 14, in LoginCheck
    username = self.request.cookies.get('username')
NameError: global name 'self' is not defined

Что я делаю не так?

1 Ответ

5 голосов
/ 04 декабря 2010

Вы должны будете добавить «self» к определению вашей функции.Смотрите раздел 9.3.2 учебника по питону .

def LoginCheck(self):
    username = self.request.cookies.get('username') 
    password = self.request.cookies.get('password')
    if username and password:
        checkq = db.GqlQuery("SELECT * FROM Users WHERE username = :1 AND password = :2", username, password)
        checkresult = checkq.get()
        if checkresult is None:
            self.redirect("/wrong")
    else:
        self.redirect("/wrong2")
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...