linux 'Flask'对象没有属性'session_cookie_name'

o3imoua4  于 2023-05-06  发布在  Linux
关注(0)|答案(1)|浏览(184)

我一直得到错误'Flask'对象没有属性'session_cookie_name'在初始化的应用程序,用来工作。
我构建了一个较小的测试应用程序来测试它,并注意到如果删除app.config["SESSION_TYPE"] = "filesystem"行,错误就会消失。问题是我需要在我的Flask应用程序中使用会话,因为它是用于测试的,所以我更喜欢使用文件系统来存储会话数据。这是我的小程序测试…我不知道我错过了什么,这曾经工作得很好,在线代码示例正是这样做的,但我一直得到同样的错误。
This is the error I receive

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

app = Flask(__name__)

app.config["SESSION_PERMANENT"] = False
app.config["SESSION_TYPE"] = "filesystem"

Session(app)

@app.route("/")
def index():
    session["test"] = "test"
    return render_template ('index.html')

以前这招管用。它突然不工作了。我尝试安装不同版本的Flask_Session。我尝试在Session(app)之前将“SESSION_COOKIE_NAME”添加到app.config中,尽管我知道它的默认值是session。到目前为止,没有任何工作或更改错误消息。

ff29svar

ff29svar1#

当当前使用的Flask版本没有session_cookie_name属性时,会发生此错误。此属性是在Flask 2.0中添加的,因此如果您使用的是旧版本的Flask,则需要升级到新版本。
只需通过执行pip install --upgrade Flask命令升级Flask即可
注意:如果您使用的是虚拟环境,请确保在升级之前激活它。

相关问题