1
私はユーザーコレクションを持っています。各ユーザーには、サポート要求の埋め込み文書の配列があります。MongoDB/Ruby(Mongoid):埋め込み文書のみを選択する方法
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 %>
これは間違いなく醜いです。別の方法がありますか?
答えをいただきありがとうございます、私は投票しました。彼らはこれを実装することを望む。 – Alex
@Alex。投票していただきありがとうございます。私は本当に仮想コレクションを使用することもできます。 – bowsersenior