欢迎访问宙启技术站
智能推送

Python中使用LoginForm()表单实现注册与登录功能的示例代码

发布时间:2024-01-03 22:58:54

在Python中使用LoginForm()表单实现注册与登录功能的示例代码如下:

from flask import Flask, render_template, request, redirect, url_for, session

app = Flask(__name__)
app.secret_key = "mysecretkey"

class LoginForm():
    def __init__(self, username, password):
        self.username = username
        self.password = password

@app.route('/', methods=['GET', 'POST'])
def home():
    if request.method == 'POST':
        # 获取表单数据
        username = request.form.get('username')
        password = request.form.get('password')
        
        # 创建LoginForm实例
        form = LoginForm(username, password)
        
        # 将表单数据存储在session中
        session['form'] = form
        
        return redirect(url_for('login'))
    return render_template('home.html')

@app.route('/login', methods=['GET', 'POST'])
def login():
    if request.method == 'POST':
        # 获取表单数据
        username = request.form.get('username')
        password = request.form.get('password')
        
        # 获取存储在session中的表单数据
        form = session['form']
        
        # 检查用户名和密码是否匹配
        if username == form.username and password == form.password:
            return '登录成功'
        else:
            return '用户名或密码错误'
    return render_template('login.html')

if __name__ == '__main__':
    app.run()

使用例子:

1. 运行该代码,访问 http://localhost:5000,可以看到注册页面。

2. 输入用户名和密码,点击注册按钮。

3. 注册成功后,会跳转到登录页面。

4. 在登录页面输入之前注册的用户名和密码,点击登录按钮。

5. 如果用户名和密码匹配,会显示登录成功;否则,会显示用户名或密码错误。