flask实现个人博客代码实现
时间: 2023-11-02 17:09:49 浏览: 53
好的,我可以为您提供一个简单的 Flask 实现个人博客的代码示例:
```python
from flask import Flask, render_template, request, redirect, url_for, session
from datetime import datetime
import os
app = Flask(__name__)
app.secret_key = os.urandom(24)
# 主页路由
@app.route("/")
def index():
if 'username' in session:
username = session['username']
return render_template("index.html", username=username)
else:
return redirect(url_for('login'))
# 注册路由
@app.route("/register", methods=['GET', 'POST'])
def register():
if request.method == 'POST':
username = request.form['username']
password = request.form['password']
confirm = request.form['confirm']
if password == confirm:
# 在这里添加保存用户信息的代码
session['username'] = username
return redirect(url_for('index'))
else:
return render_template("register.html", message="Passwords do not match!")
else:
return render_template("register.html")
# 登录路由
@app.route("/login", methods=['GET', 'POST'])
def login():
if request.method == 'POST':
username = request.form['username']
password = request.form['password']
# 在这里添加从数据库中验证用户信息的代码
if username == "example" and password == "password":
session['username'] = username
return redirect(url_for('index'))
else:
return render_template("login.html", message="Invalid login credentials!")
else:
return render_template("login.html")
# 注销路由
@app.route('/logout')
def logout():
session.pop('username', None)
return redirect(url_for('index'))
# 博客发表路由
@app.route('/post', methods=['GET', 'POST'])
def post():
if request.method == 'POST':
title = request.form['title']
content = request.form['content']
date = datetime.now()
# 在这里添加保存博客信息的代码
return redirect(url_for('index'))
else:
return render_template('post.html')
if __name__ == "__main__":
app.run(debug=True)
```
这是一个简单的 Flask 实现个人博客的代码示例,其中包括了主页、注册、登录、注销和博客发表等路由,您可以根据自己的需要进行修改并添加其他功能。需要注意的是,这只是一个示例代码,并不是完整的个人博客系统代码。