ThinkPHP5.1使用路由resource的update保存数据一直报错1054 Unknown column ‘id‘ in ‘where clause‘

在使用ThinkPHP5.1框架时,遇到使用resource路由进行数据更新操作时出现错误,报错信息提示找不到'id'字段。作者怀疑框架默认使用'id'作为主键,尝试通过save和update方法的where()条件传入'Key_Id'无果,问题仍未解决。最终采用手动拼接SQL语句的方式规避了问题,但未找出根本原因。如果你知道解决方案,欢迎留言讨论。
摘要由CSDN通过智能技术生成

ThinkPHP5.1使用路由resource的update保存数据一直报错

如下图所示,按照路由规则传参、Model使用save或者update,更新指定id的参数。但是一直报错数据库无法找到“id”的字段。但是根本没有传id,我怀疑是框架默认用的是“id”。save和update里面的where(),条件直接忽略了。(个人推测,可能在哪里可以设置,我还没有搞清楚)
路由路由规则进行填写
结果会报错:Column not found: 1054 Unknown column ‘id’ in ‘where clause’
在这里插入图片描述
报错信息里面,执行的SQL详情,显示where条件是“id”,如上所见,我明明传入的是“Key_Id”,就真的很奇怪。
在这里插入图片描述
最后的处理办法是这样,退而求其次。 如下图
修改后
写在最后,上面的报错问题,目前我还没有找到原因,哪位大神如果知道,欢迎评论区讨论。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值