Rails 5 рейтинг пользователей по количеству задач - PullRequest
0 голосов
/ 04 августа 2020

У меня 2 модели User и Task

User -> has_many :tasks
Task -> belongs_to :user

Я хочу составить рейтинг пользователей по количеству задач

Ожидаемый результат:

[['jhon', 120],['peter', 115],['mary', 101],....]

my попытка:

User.left_joins(:tasks).group(:id).order('count(tasks.id)').limit(20) ---> not working, can't get the user name

1 Ответ

1 голос
/ 04 августа 2020

Обновите свой запрос до

User.left_joins(:tasks).group(:id).select('users.name, count(tasks.id) as tasks_count').order('tasks_count DESC').limit(20).map{ |user| [user.name, user.tasks_count] }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...