1. 经历

昨天想着把自己原来用来学基础的小程序拿来转型成一个反馈系统
说干就干...
昨天晚上加上今天中午一段时间, 估计四五个小时吧,
于是接口在本地调试完成之后, 高高兴兴地准备去上线, BUG总是在你快要成功时拉你一把(欲哭无泪), 时间直接翻倍

生成数据表(你的不经意毁掉了我多少温柔)

2. 问题源自此处

导出表

懵逼树下你和我

前面忘记截图了, 现在似乎复刻不了了, 算了, 没图就抽象一点

一开始也不知道问题在哪, 看看日志, 还以为是uWSGI的问题, 于是重启了几次, 不过还是一样

咱也不知道这个uWSGI在说啥, 它好像要挂了

3. Debug寻找问题

不知道怎么在服务器debug, 也没有print(), 就在代码中插入return来模仿print(), 手动断点

return JsonResponse({"error": "1023"})

4. 发现问题

通过返回的数据找到了罪魁祸首-数据库错误
"Table 'feedback.Users' doesn't exist"
说这个表不存在, 我就纳闷了, Why?
model里面有三张表, 也导入了, 接着就是删除-导入-删除-导入-删除-导入

5. 解决问题

最后看了下之前写的接口model, 发现好像是表名的大小写问题
图二的表名首字母都是大写的, 其实在Windows系统里数据库对大小写不敏感, 统一会变成小写
然而在Linux系统中, mysql对大小写是敏感的, 当然你也可以让它不敏感
结果就是把图二表名改成小写, 重新导入就好了

6. 成功历程

这一瞬间, 一身轻松

这里1023表示正文内容操作成功, 后面是微信的openid

小程序成功连上接口

成功登录

成功存入数据库

提交反馈

成功返回1023

数据库也成功存入

过程十分痛苦, 麻了, 乏了