bug日记

2019-03-18  本文已影响0人  缺志青年

2019

3/18

1.sql语句

    article = Article.query.filter_by(article_id=article_id).all()
    article = Article.query.filter_by(article_id=article_id).first()
    print(article)
情景再现:当刷新浏览器页面时,出现pycharm控制台有信息打印,浏览器网页空白。
原因解析:.all()返回的是列表,.first()返回的只是一个结果。

ps:弄了两天,就差提刀干室友了。

3/27

2.flask json数据返回报错

相关包:requests
情景再现:当通过requests.get()获取其他网站返回的json数据时,数据是以dict的形式返回的。\color{red}{TypeError: 'dict' object is not callable}
原因解析:视图函数的返回值不支持dict类型。
解决办法:在返回时可以通过导入flask中内置的jsonfy函数来格式化数据。\color{red}{return}\color{red}{jsonfy(result)}

3/28

3.postman 请求数据报错

情景再现:中文参数Postman报错如下:\color{red}{Could}\color{red}{not}\color{red}{get}\color{red}{any}\color{red}{response}
原因解析:不明,揣测原因是因为中文的编码问题
解决办法:先按照postman的提示,进行相关设置的更改。再不行就先将链接复制到浏览器中访问一次。在将浏览器中的url复制回来。后面直接改关键字即可。

4/2

4.元组报错

情景再现:在flask渲染的界面中,数据始终以('data')呈现
原因解析:在某些地方使数据成为了元组
解决办法:查询该数据出现的位置,检查是否在末尾加上了  ,  python的元组构成是以  ,  为标志的,而不是  ()  

4/16

5.flask-adminModelView报错

情景再现:当传入参数db.session时,pycharm提示“Unexpected”。运行时报错“Please install wtforms_appengine in order to use appengine backend”,在安装之后,又会提示安装google包。
原因解析:问题出现在ModelView上。ctrl加鼠标左键点击该函数。可以看到函数只允许传入一个值。
解决办法:from flask_admin.contrib.sqla import ModelView。
ps: 导入错了包。这个函数时.sqla里面的。不是appengine里面的。

4/18

6.flask templates中的模板语法无法自动提示

情景再现:pycharm无法自动关联jinja2或无法进行语法提示
原因解析:三种原因。见解决办法。
解决办法:setting->languages->flask中的Flask integration勾选上。同级目录python Template Languages 选中jinja2。templates文件右键找到mark directory as选择template flolder。
ps:针对于专业版。社区版很多无相关设置。

上一篇 下一篇

猜你喜欢

热点阅读