[Bug] 在添加「搜索列表项」功能后查询失败

55 阅读1分钟

我正在参加「掘金·启航计划」

1、问题描述

在添加添加「搜索列表项」功能后,不仅搜索功能未能如愿显示,而且原先的「获取分类列表」功能也失效了。

  • 重构的GetCategories()代码如下: image.png
  • 错误的预期效果: image.png

2、问题分析

  1. 通过 API 工具直接发送JSON请求,发现也没接到查询数据。因此可以确定问题集中在后端部分。 image.png
  2. Router ->API->Model由外向内一层层调试,通过在关键流程处打印信息发现传参无误。
  3. 查看ORM语句,找到Bug: image.png

3、解决方案

搜索功能是部分字符查找的,应当用SQL模糊查询,Where 子句应修改为:

    Where("username LIKE ?", username+"%")

4、总结及展望

重读 MySQL