首页 > 解决方案 > 如何在 Rails 中对相关结果进行分组包括

问题描述

应用程序/模型/car_make.rb

has_many :car_models

应用程序/模型/car_model.rb

belongs_to :car_make

我想用他们的模型获取所有品牌。但是模型应该按名称分组。我写了以下查询,但是

 makes = CarMake.includes(:car_models).group('car_models.name')

但它给出了一个错误Unknown column car_models.name

标签: ruby-on-railsrubyactiverecordinclude

解决方案


.includes在两个查询中加载记录。因此,为了对连接表进行分组,您需要引用它来强制连接查询:

makes = CarMake.includes(:car_models)
               .references(:car_models)
               .group('car_models.name')

推荐阅读