Подтвердить что ты не робот

Group_by в рельсах по 2 или более атрибутам

У меня есть @bunch моделей, возвращаемых как массив

каждая модель имеет атрибуты - commentable_id и commentable_type (полиморфная ассоциация)

Я хочу сгруппировать модели с помощью комментариев, но если я делаю

@bunch.group_by(&:commentable)

он также извлекает комментарии из базы данных, которая не нужна.

Я могу сделать @bunch.group_by(&:commentable_id), но это вызовет некоторые недоумения, так как может быть несколько типов комментируемых моделей

Есть ли способ group_by commentable_id И commentable_type?

4b9b3361

Ответ 1

Почему бы не сделать:

@bunch.group_by{|e| [e.commentable_id, e.commentable_type]}