You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ActiveRecord查询语法问题:如何正确编写语句查询Phase列匹配的记录

错误原因

你现有写法将case_file.phase用双引号包裹,被识别为固定字符串传入查询条件,实际执行的SQL是匹配state字段值为case_file.phase这个字符串的记录,所以返回空结果。

正确写法

根据你的实际查询需求二选一即可:

  • 若你需要查询phase字段等于case_file对象的phase属性值的记录:
CaseFileStatus.where(phase: case_file.phase)
# 取第一条匹配记录的话补充.first后缀即可,和你之前的正确写法一致
CaseFileStatus.where(phase: case_file.phase).first
  • 若你需要查询state字段等于case_file对象的phase属性值的记录,直接去掉case_file.phase外层的引号即可:
CaseFileStatus.where(state: case_file.phase)

内容的提问来源于stack exchange,提问作者user16741832

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 20:06:04