flask制作登录注册
时间: 2023-10-11 12:14:31 浏览: 36
1. 安装Flask:在命令行中输入 `pip install Flask`
2. 创建Flask应用:创建一个名为 `app.py` 的文件,编写以下代码:
```python
from flask import Flask, render_template, request, redirect, url_for, session
app = Flask(__name__)
app.secret_key = 'your_secret_key'
@app.route('/')
def home():
return render_template('home.html')
@app.route('/register', methods=['GET', 'POST'])
def register():
if request.method == 'POST':
# 处理注册请求
return redirect(url_for('login'))
else:
# 显示注册页面
return render_template('register.html')
@app.route('/login', methods=['GET', 'POST'])
def login():
if request.method == 'POST':
# 处理登录请求
return redirect(url_for('home'))
else:
# 显示登录页面
return render_template('login.html')
if __name__ == '__main__':
app.run(debug=True)
```
3. 创建模板文件:在应用根目录下创建 `templates` 文件夹,并在其中创建以下模板文件:
`home.html`:
```html
<!DOCTYPE html>
<html>
<head>
<title>Home</title>
</head>
<body>
<h1>Welcome to the Home page!</h1>
<a href="{{ url_for('login') }}">Login</a>
<a href="{{ url_for('register') }}">Register</a>
</body>
</html>
```
`register.html`:
```html
<!DOCTYPE html>
<html>
<head>
<title>Register</title>
</head>
<body>
<h1>Register</h1>
<form method="POST">
<label for="username">Username:</label>
<input type="text" id="username" name="username"><br><br>
<label for="password">Password:</label>
<input type="password" id="password" name="password"><br><br>
<label for="confirm_password">Confirm Password:</label>
<input type="password" id="confirm_password" name="confirm_password"><br><br>
<input type="submit" value="Register">
</form>
</body>
</html>
```
`login.html`:
```html
<!DOCTYPE html>
<html>
<head>
<title>Login</title>
</head>
<body>
<h1>Login</h1>
<form method="POST">
<label for="username">Username:</label>
<input type="text" id="username" name="username"><br><br>
<label for="password">Password:</label>
<input type="password" id="password" name="password"><br><br>
<input type="submit" value="Login">
</form>
</body>
</html>
```
4. 处理注册和登录请求:在 `register` 和 `login` 视图函数中编写处理注册和登录请求的代码。
5. 使用session管理登录状态:在登录成功后,将用户信息存储到session中,以便在其他页面中使用。在 `home` 视图函数中,检查session中是否有用户信息,如果没有则重定向到登录页面。
完成以上步骤后,即可运行Flask应用,并在浏览器中访问 `http://localhost:5000` 查看效果。