【问题标题】:Querying ActiveRecord Syntax查询 ActiveRecord 语法
【发布时间】:2021-11-10 20:50:11
【问题描述】:

我正在处理一项任务,我必须定义一个将某些内容附加到数据库中的列的函数,但是我很新,尽管查看了 ActiveRecord 文档,但我似乎无法掌握我要查找的列。

例如,我有一个包含许多列的表,包括“状态”和“阶段”,我可以使用以下代码获取状态:

 CaseFileStatus.where(state: case_file.state).first

但是我现在无法以某种方式抓住“阶段”列,如下所示。

      CaseFileStatus.where(state: "case_file.phase")
      CaseFileStatus Load (2.5ms)  SELECT "case_file_statuses".* FROM "case_file_statuses" WHERE "case_file_statuses"."state" = $1  [["state", "case_file.phase"]]
      => []

我确定这是一个超级基本的错误,但我应该如何构造这个查询呢?

【问题讨论】:

  • "case_file.state" 是一个字符串,你需要一个变量,所以省略双引号

标签: sql ruby-on-rails


【解决方案1】:

如果您需要根据phase 列查询记录,您应该这样做:

CaseFileStatus.where(phase: case_file.phase)

【讨论】:

    猜你喜欢
    • 2014-06-01
    • 1970-01-01
    • 2011-04-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-09-14
    • 2016-04-07
    相关资源
    最近更新 更多