Ruby on rails 如何在Rails 3中搜索没有';你没有模特吗?
我有两个模型Ruby on rails 如何在Rails 3中搜索没有';你没有模特吗?,ruby-on-rails,ruby-on-rails-3,activerecord,ruby-on-rails-3.1,Ruby On Rails,Ruby On Rails 3,Activerecord,Ruby On Rails 3.1,我有两个模型merchant和category具有HABM关系,因此有一个名为categories\u merchants 如何在ActiveRecords中编写以下查询? SELECT categories_merchants.merchant_id WHERE categories_merchants.category_id IN (1,2,3,4) 注意:连接表没有模型,它在Rails 3中自动工作,无需模型。如果您想进行这样的查询,您应该在has\u many:tour
merchant
和category
具有HABM关系,因此有一个名为categories\u merchants
如何在ActiveRecords中编写以下查询?
SELECT
categories_merchants.merchant_id
WHERE
categories_merchants.category_id IN (1,2,3,4)
注意:连接表没有模型,它在Rails 3中自动工作,无需模型。如果您想进行这样的查询,您应该在
has\u many:tour
中转换您的HABTM,并为连接表创建一个模型并基于该模型进行查询
或者,但性能可能较差,您可以:
Merchant
.select(:id)
.joins("categories_merchants ON categories_merchants.merchant_id = merchant.id")
.where("categories_merchants.category_id IN (?)", [1,2,3,4])
由于性能不是一个问题,我尝试使用这种类型的查询——但不断得到一个
未定义的方法'where'for#
错误