解决web.py使用session时报错AttributeError问题

最近在学习web.py使用session时,经常会遇到AttributeError错误,大体报错内容是:
AttributeError: ‘ThreadedDict’ object has no attribute ‘xxxxx’
网上找的解决办法都是关闭web.py的调试模式,但有时关闭后也会报错,很是郁闷。
最后郑晓摸索出了使用session时需要注意的几点,在这里记录一下:

1. 首先请关闭调试模式:

web.config.debug = False

代码需加到import web后,调用web.application之前,像这样:

import web
web.config.debug = False
urls = ('/', 'index')
app = web.application(urls, globals())

2. 创建session时,加上initializer参数,给你的session设置个默认值,像这样:

session = web.session.Session(app, web.session.DiskStore('sessions'), initializer={'user':None, 'login':None})

按说不加initializer也应该可以使用啊,不知道为什么我不加的话,就会报错,不管你是不是判断了is not None,只要你调用了session.xxx就报错。

3.最?宓囊坏悖荷境??按唇ǖ?essions文件。

上一步中,郑晓设置了将session以文件的形式储存到当前目录下的sessions目录中。所以在上二步确认无问题后,手动将sessions目录中的已存在的文件删除。不删除的话,程序还是使用的旧版session,还会报错- -!

时间: 2024-09-17 11:33:53

解决web.py使用session时报错AttributeError问题的相关文章

解决ThinkPHP关闭调试模式时报错的问题汇总

  解决ThinkPHP关闭调试模式时报错的问题汇总         本文给大家汇总了一下个人在项目中所遇到的关闭ThinkPHP的调试模式时遇到报错的几种情况以及最终的处理办法,非常的简单实用,这里分享给大家,有需要的小伙伴可以参考下. 案例一: 最近用ThinkPHP开发一个项目,本地开发测试完成上传到服务器后,第一次打开正常,再刷新页面时就出现 "页面调试错误,无法找开页面,请重试"的错误. 我就郁闷啦,明明本地设置define('APP_DEBUG', false) 运行没点问

解决web.py在SAE云中的Session使用问题

这段时间一直想尝试着在SAE中使用Python,初步选择了Web.py框架做为开发框架,但是可怜SAE上的资料少的可怜,有点问题基本上解决不了,今天解决一个Session在Session的存储问题,在SAE中不能直接用本地文件存储,好像是权限的原因,我现在采用的是保存在mysql中,效果也不错.希望对大家有帮助.直接上代码了. index.wsgi #!/usr/bin/env python # coding: utf-8 import os import web import sae from

解决ThinkPHP关闭调试模式时报错的问题汇总_php技巧

案例一: 最近用ThinkPHP开发一个项目,本地开发测试完成上传到服务器后,第一次打开正常,再刷新页面时就出现 "页面调试错误,无法找开页面,请重试"的错误. 我就郁闷啦,明明本地设置define('APP_DEBUG', false) 运行没点问题,怎么放到服务器上就出错了昵? baidu,Google还是没有找到解决方案,突然发现项目APP_Name/Runtime/Cache目录和APP_Name/Runtime/Logs目录没有可写权限,果断更改,F5,唉好啦,妈妈再也不用担

VS2012创建web窗体应用程序时报错

问题描述 见图片,什么原因呢? 解决方案 解决方案二:修复下吧,你指定目录下没这些packet,一般来说装完这些默认都有的,也可以通过nuget来下载

web.py在SAE中的Session问题解决方法

  这篇文章主要介绍了web.py在SAE中的Session问题解决方法(使用mysql存储),本文直接给出实现代码,代码中包含详细注释,需要的朋友可以参考下 这段时间一直想尝试着在SAE中使用Python,初步选择了Web.py框架做为开发框架,但是可怜SAE上的资料少的可怜,有点问题基本上解决不了,今天解决一个Session在Session的存储问题,在SAE中不能直接用本地文件存储,好像是权限的原因,我现在采用的是保存在mysql中,效果也不错.希望对大家有帮助.直接上代码了. index

jax ws-通过wsdl生成webservice,调用时报错求解决

问题描述 通过wsdl生成webservice,调用时报错求解决 客户端,报com.sun.xml.ws.server.UnsupportedMediaException 解决方案 错误提示了,web service需要使用Content Type为text/xml 解决方案二: 能详细说一下吗?刚自学java 解决方案三: 请检查服务器和客户端的SOAP版本是不是一样. 另外参考C# 调用 jax-ws 时的问题 这个问题是解决了, 确实版本问题, jdk6默认是soap1.1 增加 @Bin

java web项目在tomcat中运行时报错,tomcat正常运行

问题描述 java web项目在tomcat中运行时报错,tomcat正常运行 严重: Exception sending context initialized event to listener instance of class com.sun.faces.config.ConfigureListener java.lang.AbstractMethodError: org.apache.crimson.tree.ElementNode2.getTextContent()Ljava/lan

java做微信开发时报错说HierarchicalStreamDriver类不存在,不知道怎么解决

问题描述 java做微信开发时报错说HierarchicalStreamDriver类不存在,不知道怎么解决 massageUtil.java @SuppressWarnings("unchecked") public static Map<String, String> parseXml(HttpServletRequest request) throws Exception { // 将解析结果存储在HashMap中 Map<String, String>

python使用scapy时报错:no module names pcapy,请问怎么解决?

问题描述 python使用scapy时报错:no module names pcapy,请问怎么解决? 如上图,使用IP的时候说未定义的变量,编译一下就这样,请问怎么解决?我这是在win 8.1下,是不是windows的问题? 解决方案 看样子是没有安装pcapy模块,你根据你的python版本下载了这个包吗 解决方案二: 多说一句,我是从pypi下了包,自己手工运行setup.py安装的,是不是这样的问题