You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flask入门遇TypeError问题求助:'function'对象不支持元素赋值

修复Flask Session的TypeError错误

错误原因

你遇到的TypeError: 'function' object does not support item assignment,本质是代码里的session被当成了函数,而非Flask提供的session对象。通常是因为自定义了同名的session函数,或者导入方式错误,导致覆盖了Flask的内置session对象。

修复步骤

  1. 检查导入与命名冲突
    确保从Flask正确导入session:

    from flask import session
    

    排查代码中是否存在def session():这类自定义函数,或者同名变量,避免覆盖Flask的session对象。

  2. 修正session使用方式
    Flask的session是字典式对象,直接通过键值对赋值即可,不需要把它当成函数调用:

    # 错误写法
    session()['username'] = 'test'
    # 正确写法
    session['username'] = 'test'
    
  3. 配置Secret Key
    使用session前必须设置secret_key,否则会触发权限错误,添加到应用初始化代码中:

    app = Flask(__name__)
    app.secret_key = 'your_random_secret_string'  # 替换为随机生成的字符串
    

内容的提问来源于stack exchange,提问作者zark

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 06:07:37