博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
flask开发填坑
阅读量:3904 次
发布时间:2019-05-23

本文共 2677 字,大约阅读时间需要 8 分钟。

0x0 前言

本人在flask开发过程中遇到许多问题,在此进行记录。希望能帮助到flask开发道路上的同学。随手填井盖?

.

0x1Target database is not up to date

1-1

如果遇到上述问题,请找到migrations中最新版本得迁移文件
在这里插入图片描述
将其中的revision号手动填到数据库的alembic_version表中,覆盖原有数据
在这里插入图片描述

0x2 在deploy的时候出错但是只显示两行

在这里插入图片描述

如果出现这种情况,你可能是在代码中使用了try语句,但是你没有将错误信息打印出来。

0x3 property of that name exists on mapper

sqlalchemy.exc.ArgumentError: Error creating backref 'xxx' on relationship 'xxx.xxx': property of that name exists on mapper 'mapped class xxx->xxx'

出现这种情况是说你的backref已经存在于别的映射上了,所以你可以将backref重命名。比如backref–>back_populates

0x4 Error: While importing “app”, an ImportError was raised:

Traceback (most recent call last):  File "F:\FTP\xxx\venv\lib\site-packages\flask\cli.py", line 236, in locate_app    __import__(module_name)  File "F:\FTP\xxx\app\__init__.py", line 9, in 
from .auth import CAS, login_required File "F:\FTP\xxx\app\auth\__init__.py", line 5, in
from . import views File "F:\FTP\xxx\app\auth\views.py", line 7, in
from .. import admin_permissionImportError: cannot import name 'admin_permission'

原因是出现了循环引用(import),修改引用,打破循环。

0x5 pycharm git push 出错 SSL_ERROR_SYSCALL, errno 10054

Enumerating objects: 855, done. Delta compression using up to 4 threads. Total 676 (delta 88), reused 0 (delta 0) The remote end hung up unexpectedly The remote end hung up unexpectedly RPC failed; curl 56 OpenSSL SSL_read: SSL_ERROR_SYSCALL, errno 10054

  • 解决方法:
    进入pycharm中的命令行(Terminal)输入
git config --global http.postBuffer 524288000  git config http.sslVerify "false"git push

0x6 pycharm git push出错:Push rejected: Push was rejected, and update failed with error.

更新拒绝,update失败,这个场景常出现在commit完事要push时,如果这个时候远端发生改变,会要求你先update本地代码再向远端提交,以保证一致性。但是这个时候你本地有commit,所以update将会提示失败:

Untracked Files Prevent Merge
Move or commit them before merge
此时可以通过撤销commit来update,再进行push
撤销命令
git reset --soft HEAD^
https://www.cnblogs.com/lfxiao/p/9378763.html

0x7 form.validate_on_submit() 出错

当遇到这种情况而且怎么差都没问题,csrf_token也写了,DataRequire也写了,,,就是找不出错误。

有可能是form 中存在select,这个select没有choices了,需要手动添加上才能验证通过。

# 为保证form.validate_on_submit() == True   form.permission.choices = [(r.id, r.name) for r in Role.query.all()]   form.organization.choices = [(o.id, o.name) for o in Organization.query.all()]

0x8 Push rejected: Push to origin/master was rejected

你的项目中有和和历史不符的东西

直接打开你要上传代码的文件夹位置鼠标右键git Bash Here

然后直接下面两行命令解决问题
git pull origin master –allow-unrelated-histories
git push -u origin master -f

0x9 flask_principal第一次登陆管理员账号失败,需要推出重新登陆

原因是第一次登陆时系统没有将匿名账号写入session,在login函数起始位置增加代码:

identity_changed.send(        current_app._get_current_object(),        identity=AnonymousIdentity())

0x10 jinja2.exceptions.TemplateSyntaxError:Missing end of comment tag

注释没有闭合。

你可能感兴趣的文章
MATLAB鼠标选取ROC区域
查看>>
MFC按键控制
查看>>
google play app下载方法测试
查看>>
STM32利用FATFS读写数组
查看>>
Altium_Designer如何快速寻找元件和封装
查看>>
PCB各层介绍和AltiumDesigner画PCB时的规则设置
查看>>
char*,const char*和string 三者转换
查看>>
[PADS经验] 【图文并茂】教你如何使用Altium Designer画封装
查看>>
Altium Designer 教程
查看>>
字符串与数字转换方法
查看>>
利用Inoreader跟踪ScienceDirect最新文献教程
查看>>
VS2010/MFC编程入门之二十七(常用控件:图片控件Picture Control)
查看>>
STM32下SPI模式通过MAX7219驱动8位数码管显示模块
查看>>
目标检测的图像特征提取之(一)HOG特征
查看>>
web前端开发分享-css,js工具篇
查看>>
jQuery 学习笔记(未完待续)
查看>>
如何用万用表检测MOS管是好是坏?
查看>>
LabWindows/CVI入门之第一章:LabWindows/CVI开发环境
查看>>
LabWindows/CVI入门之第二章:GUI开发
查看>>
labwindows下保存数据为csv格式
查看>>