本人在flask开发过程中遇到许多问题,在此进行记录。希望能帮助到flask开发道路上的同学。随手填井盖?
.
如果遇到上述问题,请找到migrations中最新版本得迁移文件
将其中的revision号手动填到数据库的alembic_version表中,覆盖原有数据
如果出现这种情况,你可能是在代码中使用了try语句,但是你没有将错误信息打印出来。
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
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_permission
ImportError: cannot import name 'admin_permission'
原因是出现了循环引用(import),修改引用,打破循环。
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
git config --global http.postBuffer 524288000
git config http.sslVerify "false"
git push
更新拒绝,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
当遇到这种情况而且怎么差都没问题,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()]
你的项目中有和和历史不符的东西
直接打开你要上传代码的文件夹位置鼠标右键git Bash Here
然后直接下面两行命令解决问题
git pull origin master –allow-unrelated-histories
git push -u origin master -f
原因是第一次登陆时系统没有将匿名账号写入session,在login函数起始位置增加代码:
identity_changed.send(
current_app._get_current_object(),
identity=AnonymousIdentity())
注释没有闭合。