У меня есть коллекция пользователей. У каждого пользователя есть массив встроенных документов: запросы поддержки.
class User < MyModel
include Mongoid::Document
embeds_many :tickets
...
end
class Ticket < MyModel
include Mongoid::Document
embedded_in :user, :inverse_of => :tickets
...
end
В разделе администратора я делаю запрос, чтобы выбрать все запросы поддержки. Но так как коллекция билетов встроена, я не могу делать запросы напрямую. Вот что я получил:
@users_with_pending_tickets = User.only(:tickets).where("tickets.status" => "Pending")
<% for user in @users_with_pending_tickets %>
<% ticket = user.tickets.where(:status => "Pending").first %>
<%= ticket... %>
<% end %>
Это определенно выглядит безобразно. Есть ли другой способ?