建立强大的登录/注册类登录系统

时间:2019-10-16 21:00:28

标签: python

我正在尝试使用PostgreSQL建立强大的登录/注册系统。还有一件让我无法完成工作的事情是思考客户端应用程序的工作原理。

想象一下这个应用程序有1000个人在运行,我该如何定义变量?最近,我正在和我的朋友程序员聊天,他说我应该在类中使用某种self.emailself.password变量。但是我不明白这一点。除了我可以轻松注册,登录系统而无需任何类和self引用之外,我只会使用全局变量,但是我的朋友说过,每个新用户都会覆盖全局变量。

那么在不覆盖任何用户的情况下创建登录/注册系统的最佳方法是什么?

这是我尝试使用类编写的代码。

这是客户端应用程序。

Main.py

from Account import Register

class Main():
    def __init__(self):
        self.isregistered = input('Registered or no? (Y/N) : ')
        if self.isregistered == 'Y':
            print('logg in...')
            pass
        else:
            self.register_name = Register()
            print(self.register_name)

    def return_register_name(self):
        print(self.register_name)

Main()

这是Account.py模块,其中包括Register()

import getpass

def Register():
    a = input('enter your name ')
    b = getpass.getpass('enter your psw ')
    return a, b

def Login():
    login_user = input('Login name ')
    login_psw = getpass.getpass('Login pass ')

1 个答案:

答案 0 :(得分:1)

您可以考虑使用cookie或与django会话:

会话:https://developer.mozilla.org/it/docs/Learn/Server-side/Django/Sessions

Cookie:https://www.tangowithdjango.com/book/chapters/cookie.html

会话,我想这就是您想要的,因为cookie可以保存很长时间,因此您需要在用户登录时用用户数据创建一个新会话,并在注销时销毁。每个用户的会话和Coockie都不相同,因此不会被覆盖