Я знаю, что это можно сделать:
Article.where("published_at <= ?", Time.now).includes(:comments)
Но что, если я хотел бы получать комментарии только за последний месяц?
Допускает ли оператор .include условия?
Article.includes(:comments).where("articles.published_at <= ? and comments.created_at >= ?", Time.now, Time.now - 1.month)
РЕДАКТИРОВАТЬ:
Article.joins(:comments).where("articles.published_at <= ? and comments.created_at >= ?", Time.now, Time.now - 1.month)
В Rails4 должно быть: Article.includes(:comments).where("articles.published_at <= ? and comments.created_at >= ?", Time.now, Time.now - 1.month).references(:comments)
Article.includes(:comments).where("articles.published_at <= ? and comments.created_at >= ?", Time.now, Time.now - 1.month).references(:comments)
Источник