0

我有工作哪些has_many类别我有业务哪些has_many类别。

目前我只为工作和企业分配 1 个类别,但这会在以后改变,这就是我创建 has_many 关联的原因。

分配给企业和工作的类别来自使用选择菜单选择的相同类别表,目的是匹配它们。

如果有工作,我如何找到与工作类别相匹配的企业。

例如 job = Job.find(1)

> job.categories.first.name
 => "programmer"

如果我想查找列出的所有具有该programmer类别的企业,我该怎么做?

我想我可能需要加入或包含与此类似的内容,但我不确定应该如何准确编写。

Business.includes(:categories).where(:categories == ...)

4

1 回答 1

1

您的代码几乎是正确的。这应该有效:

Business.joins(:categories).where(categories: {name: 'programmer'})

或者,如果您有多个类别:

Business.joins(:categories).where(categories: {name: ['programmer', 'other']})
于 2012-11-29T04:46:54.987 回答