【发布时间】:2014-04-24 13:58:00
【问题描述】:
我的代码中有这个模型:
car.rb、model.rb、brand.rb
car belongs_to model
model belongs_to brand
我提出这个要求:
select('brands.label, brands.id, count(ads.model_id) AS nbr_car').order('nbr_car DESC').joins(:model).joins('INNER JOIN brands AS brands ON brands.id = models.brand_id').group('brands.id').published.map{|c| [c.label, c.id]}
这会导致以下 SQL:
SELECT brands.label, brands.id, count(ads.model_id) AS nbr_car
FROM `ads`
INNER JOIN `models` ON `models`.`id` = `ads`.`model_id`
INNER JOIN brands AS brands ON brands.id = models.brand_id
WHERE `ads`.`type` IN ('Car')
GROUP BY brands.id
ORDER BY nbr_car DESC
在 Rails 中,我得到的是空数组,但从 SQL 中我得到了结果!
怎么了?
【问题讨论】:
-
你确定你在同一个数据库上运行它们吗?
标签: sql ruby-on-rails ruby ruby-on-rails-3