У меня есть блог. На моей индексной странице я вытягиваю все сообщения в блоге. Для каждого сообщения в блоге я подсчитываю количество комментариев к этому сообщению. Это приводит к проблеме N + 1. Мои запросы выглядят следующим образом:
SELECT "blog_posts".* FROM "blog_posts" WHERE ("blog_posts"."published" = 't') ORDER BY published_at DESC
SELECT "users".* FROM "users" WHERE ("users"."id" IN (1, 2, 3))
SELECT COUNT(*) FROM "blog_comments" WHERE ("blog_comments".blog_post_id = 10)
SELECT COUNT(*) FROM "blog_comments" WHERE ("blog_comments".blog_post_id = 9)
SELECT COUNT(*) FROM "blog_comments" WHERE ("blog_comments".blog_post_id = 8)
SELECT COUNT(*) FROM "blog_comments" WHERE ("blog_comments".blog_post_id = 2)
SELECT COUNT(*) FROM "blog_comments" WHERE ("blog_comments".blog_post_id = 7)
Есть ли способ в Rails включить COUNT таким же образом, что и пользователи (строка SQL 2)?