FAQ¶
如何调试¶
复杂程序建议您本地调试成功后,再上传运行。
SAE Python 版本为 2.6.7。如果你使用内置的第三方库版本,请注意使用同样的版本调试, 如支持的Django为1.2.7。
如何捕获wsgi应用的异常,请参阅 http://www.python.org/dev/peps/pep-0333/
501 页面对应的常见处理办法,请检查:
- 使用dev_server查看是否有语法错误
- 模块是否正确安装
- 是否遵循WSGI规范,返回iterator
- 数据库设置是否正确,是否已在SAE管理界面启用MYSQL,是否已创建数据表,初始化
- 是否已经打开framework的debug功能
有的framework默认关闭了debug功能,如果程序有问题则只返回500 internal error,没有异常堆栈信息, 这样调试起来很困难。在开发过程中,请确认框架的debug功能处于开启状态。
对于无法加载index.wsgi,index.wsgi中没有application callable等等严重错误,SAE Python会直接在浏览器中打印出异常, 其余应用没有捕获的异常会打印到应用的日志中,如果需要SAE Python将所有应用未捕获的异常打印到浏览器,请按如下创建application。
Note
在header已经发出的情况下,异常在浏览器中可能显示不出来,请查看日志。
Python新手?入门教程¶
笨办法学Python, Learn Python The Hard Way
作者: Zed Shaw, 译者: wangdingwei82@gmail.com
http://readthedocs.org/docs/learn-python-the-hard-way-zh_cn-translation/en/latest/index.html
Python 2.6.7 官方教程
Python模块索引
没有我要使用的包,怎么办?¶
Don’t panic. See howto-use-sae-python-with-virtualenv
关于svn的问题¶
Warning
不要使用svn cp,mv,目前还不支持这两个操作。
http://sae.sina.com.cn/?m=devcenter&catId=211
大文件,文件数多上传 http://www.douban.com/group/topic/23353500/
bug 静态目录不支持多级? http://www.douban.com/group/topic/23692928/
建议遇到奇怪svn错误,可以:
- 重新在本地新建目录,检出干净的svn
- 或者先保存代码,然后删除该版本,重新导入
你也许需要新建一个版本,默认版本无法删除。
WTF! MySQL gone away¶
MySQL连接超时时间为30s,所以你需要在代码中检查是否超时,是否需要重连。
【bug?】我用tornado db连接 出现了mysql gone away... http://www.douban.com/group/topic/23673391/
mysql中创建表的问题 http://www.douban.com/group/topic/23689631/
flask-sqlalchemy 如何在每次请求时重新连接数据库 http://www.douban.com/group/topic/24103570/