flask官方文档中的设置:
from flask import Flask, session
from flask.ext.session import Session
app = Flask(__name__)
# Check Configuration section for more details
SESSION_TYPE = 'redis'
app.config.from_object(__name__)
Session(app)
@app.route('/set/')
def set():
session['key'] = 'value'
return 'ok'
@app.route('/get/')
def get():
return session.get('key', 'not set')
You may also set up your application later using init_app() method:
sess = Session()
sess.init_app(app)
部分代码示例:
from flask import Blueprint, request, render_template, session, redirect, url_for
from FlaskProject.App.models import Movie
blue = Blueprint("blue", __name__)
@blue.route("/login/", methods=["GET", "POST"])
def login(): # 一、设置session
if request.method == "GET":
return render_template("login.html")
elif request.method == "POST":
username = request.form.get("username")
session['username'] = username # 1.username存在session中
return redirect(url_for("blue.mine")) # 3.重定向访问
@blue.route("/mine/") # 二、读取session
def mine(): # 2.存到下一个页面后读取出来
if request.method == "GET":
username = session.get("username")
movies = Movie.query.all()
return render_template("mine.html", username=username, movies=movies)