歧义列

Mar*_*ert 0 activerecord ruby-on-rails

我的模型中有一个示波器

scope :created_this_week, -> { where("created_at >= ?", Time.zone.now.beginning_of_week) }
Run Code Online (Sandbox Code Playgroud)

哪个可以正确返回该周创造的空缺数量。

现在,我需要查看其中有多少个职位空缺具有匹配(每个职位空缺可以有多个匹配),并且状态为“已应用”或“已接受”

因此,我尝试执行以下操作:

Vacancy.created_this_week.includes(:matchings)
.where(matchings: {state: ["accepted", "applied"]})
Run Code Online (Sandbox Code Playgroud)

但我得到以下错误

PG::AmbiguousColumn: ERROR:  column reference "created_at" is ambiguous
Run Code Online (Sandbox Code Playgroud)

Eye*_*dic 6

以此来更新您的范围,这应该解决歧义。

scope :created_this_week, -> { where("vacancies.created_at >= ?", Time.zone.now.beginning_of_week) }
Run Code Online (Sandbox Code Playgroud)