2013-02-11 2 views
0

Итак, я только что пришел из PHP, создавая всевозможные вещи, форумы и т. Д. И только что началось с Tkinter, Sqlite, python - и моя цель - создать систему входа пользователя, я знаю о том, как это все работает с PHP/MySQL, но есть вопросы относительно входа.python/sqlite/tkinter вместе создание системы входа в систему?

Во-первых, как (или что) мне нужно сделать для создания сеанса входа в систему? работает ли это в python? если нет, то какая альтернатива?

Чтобы уточнить, система входа, которую я имею в виду, является просто локальной базой данных (ничего не связано с Интернетом).

(Кроме того, я уже сделал регистрационную систему, и я доволен ею).

Так что, в основном, мой вопрос заключается в том, как сеансы работают в python? или если нет, то что используется вместо этого?

Спасибо заранее!

ответ

0

Вам действительно не нужно беспокоиться о механизме сеанса в настольном приложении, потому что у вас всегда есть доступ к локальному состоянию вашего приложения. Итак, все, что вам нужно сделать, это принять учетные данные пользователя, проверить их и установить переменную, указывающую, что пользователь вошел в систему.

Выход из системы - это просто вопрос очистки этой переменной.

class User: 
    def __init__(self): 
     self.current = None 

    def login(self, username, password): 
     # Replace this with the appropriate SQL query 
     if username == 'admin' and password == 'foobar': 
      self.current = username 
      return True 
     else: 
      return False 

    def logout(self): 
     self.current = None 
+0

thsi имеет смысл, но, конечно, переменная (которая действует как сеанс) сбрасывается при перезагрузке страницы? было бы нормально использовать столбец в моей таблице пользователей с именем «logged_in», и он действует как логический, 0 = не входит в систему, 1 = входит в систему - или это просто утомительно? –

+0

Если я не понимаю вас, в настольном приложении нет страниц, как в веб-приложениях. Состояние вашего приложения сохраняется в памяти до тех пор, пока процесс не завершится. –

+0

Извините, мой разум исходит из Интернета! поэтому я думаю, что в настольном приложении, изменяющемся с одной страницы, на самом деле просто движутся виджеты? –

Смежные вопросы