初用pycharm测试flask时常见报错

1. 使用flask.ext时出错

出错信息:ExtDeprecationWarning: Importing flask.ext.bootstrap is deprecated, use flask_bootstrap instead.

此错误信息出现在对 flask 进行拓展时导入包的方式上,以下导入包的方式将会产生该错误信息,

from flask.ext.script import Manager
from flask.ext.bootstrap import Bootstrap

解决方案也正如提示,改成以下代码:

from flask_script import Manager
from flask_bootstrap import Bootstrap

据说是因为在过渡期才推荐使用flask.ext导入,因为怕扩展包名修改导致的对用户的影响。现在既然这个模块已经支持直接从flask_script导入了,就无需使用这种过渡期的导入方式了。

2. 调试时有多线程在同时运行

pycharm默认的是每次点击“RUN”都会重新运行一个程序,所以当你关闭的时候会出现需要断开N条“disconnect from the running **”的提示,表明当前实际上是有许多近程在运行的。
这种情况的坏处是如果每次你只是想测试你的程序而不需要多线程的话,之前的近程可能会占用之后的端口(我是这样理解的),所以最好开始在运行器里把“Single instance only”给打上勾最好,如图所示:

3. 使用Flask-Script时出现Process finished with exit code 2


实际上这是因为flask-script 这个插件的用法是在命令行里输入python hello.py runserver运行的,flask那本书的作者也是基于你用命令行的。在pycharm下,使用 pycharm 的 run 功能,只是执行 python hello.py, 并没有添加 runserver 参数。因此脚本没有参数就执行完毕了。

解决方案就是在 在 run选项的下拉箭头,选择 edit configure选项,然后在 script parameters里添加runserver即可

4. 出现SyntaxError: Non-ASCII character ‘\xe5’ in file 的解决办法

是因为编码有问题,所以在脚本的开始加入以下代码即可

#!usr/bin/python
# -*- coding: utf-8 -*-

你可能感兴趣的:(python,flask,pycharm)