class User
has_many :books
Мне нужен запрос, который возвращает:Rails-запрос через ассоциацию, ограниченную уникальными связанными объектами?
Три последние книги, принадлежащие уникальных пользователей. То есть если мой DB имеет
users:
id: 1, name: "John"
id: 2, name: "Mary"
id: 3, name: "Bob"
books:
id: 1, title: "Ender's Game", user_id: 1
id: 2, title: "Dune", user_id: 1
id: 3, title: "The Martian", user_id: 1
id: 4, title: "The Shining", user_id: 2
id: 5, title: "The Call of Cthulhu", user_id: 2
id: 6, title: "The Hobbit", user_id: 3
Я ожидаю, что запрос возврата книг с идентификатором: [3, 5, 6], а те последние книги каждого соответствующего пользователя.
До сих пор я
Book.joins(:user).where(...).order(created_at: :desc).first(3)
Заполнитель .where
где фактическая Твердая часть будет.
Я знаю, что я мог бы вернуть нужные объекты, используя рубиновый контур, но, возможно, есть решение, совместимое с областью применения?
работает как шарм, спасибо! – Epigene