为了给你提供一个可以直接部署的代码,我将使用 Flask 作为后端框架,因为它是一个轻量级的 Web 框架,并且不需要数据库。我们将使用 Flask 的 flask_wtf 扩展来处理表单数据。
    以下是一个简单的用户登录系统示例:

    1. 后端代码
      首先,我们需要创建一个 User 类来代表用户,并用于验证用户登录。
    1. from flask_wtf import FlaskForm
    2. from wtforms import StringField, PasswordField, BooleanField
    3. from wtforms.validators import DataRequired, Email, EqualTo
    4. from flask import Flask, render_template, request, redirect, url_for, flash
    5. app = Flask(__name__)
    6. app.secret_key = 'supersecretkey' # 更换为你的随机密钥
    7. class User(FlaskForm):
    8. email = StringField('Email', validators=[DataRequired(), Email()])
    9. password = PasswordField('Password', validators=[DataRequired()])
    10. remember_me = BooleanField('Remember Me')
    11. @app.route('/login', methods=['GET', 'POST'])
    12. def login():
    13. form = User()
    14. if form.validate_on_submit():
    15. # 这里你可以使用你的数据库验证用户
    16. # 例如:从数据库中检查 email 和 password 是否匹配
    17. # 下面的代码只是为了示例而使用硬编码的用户名和密码
    18. email = form.email.data
    19. password = form.password.data
    20. remember_me = form.remember_me.data
    21. if email == 'admin@example.com' and password == 'password123':
    22. flash('Login successful!', 'success')
    23. return redirect(url_for('dashboard'))
    24. else:
    25. flash('Login unsuccessful. Please check your email and/or password.', 'danger')
    26. return render_template('login.html', title='Login', form=form)
    27. @app.route('/dashboard')
    28. def dashboard():
    29. return render_template('dashboard.html', title='Dashboard')
    30. if __name__ == '__main__':
    31. app.run(debug=True)
    1. 前端代码
      我们将使用一个简单的前端页面来处理登录表单。
    1. <!-- login.html -->
    2. <!DOCTYPE html>
    3. <html>
    4. <head>
    5. <title>Login</title>
    6. </head>
    7. <body>
    8. <h1>Login</h1>
    9. {% for message in get_flashed_messages() %}
    10. <p>{{ message }}</p>
    11. {% endfor %}
    12. <form method="POST">
    13. <div class="form-group">
    14. <label for="email">Email:</label>
    15. <input type="email" class="form-control" id="email" name="email" required>
    16. </div>
    17. <div class="form-group">
    18. <label for="password">Password:</label>
    19. <input type="password" class="form-control" id="password" name="password" required>
    20. </div>
    21. <div class="form-check">
    22. <input type="checkbox" class="form-check-input" id="remember_me" name="remember_me">
    23. <label class="form-check-label" for="remember_me">Remember Me</label>
    24. </div>
    25. <button type="submit" class="btn btn-primary">Login</button>
    26. </form>
    27. </body>
    28. </html>
    1. 静态文件

    你可能需要一些静态文件,如 CSS、JavaScript 等。在这个示例中,我将使用 Bootstrap 4 作为简单的 CSS 框架。

    首先,从 Bootstrap 4 官网 下载 Bootstrap 的 CSS 和 JavaScript 文件。

    将以下文件放在你的项目文件夹中:

    bootstrap-4.6.0-dist/css/bootstrap.min.css

    bootstrap-4.6.0-dist/js/bootstrap.min.js

    然后,在 login.html 文件中引入这些文件:

    1. <head>
    2. <title>Login</title>
    3. <!-- 引入 Bootstrap CSS 文件 -->
    4. <link rel="stylesheet" href="bootstrap-4.6.0-dist/css/bootstrap.min.css">
    5. </head>
    6. <body>
    7. <!-- 省略其他内容 -->
    8. <!-- 引入 Bootstrap JavaScript 文件 -->
    9. <script src="bootstrap-4.6.0-dist/js/bootstrap.min.js"></script>
    10. </body>
    1. 运行代码

    确保你已经安装了 Flask,并且准备好了一个 bootstrap-4.6.0-dist 文件夹,里面有我们之前下载的 Bootstrap 文件。

    在你的命令行或终端中,进入到你的项目文件夹,然后运行以下命令:

    1. python app.py

    这将启动一个开发服务器,你可以通过访问 http://127.0.0.1:5000/login 来查看和测试你的登录系统。

    注意:这个示例只是为了演示如何创建一个简单的登录系统。在实际应用中,你应该使用更安全的验证方法,如查询数据库、使用会话等。而且,你可能需要为应用添加更多功能,如注册、密码重置等。