2

Rails アプリのオートコンプリート機能を構築しています。入力フォームは、keypress で ajax 呼び出しを行い、この検索メソッドをレールで呼び出します

def search
    search = Regexp.new(params[:name])
    @users = User.where(:name=>search)

    render :json => @users
  end

すべて正常に動作します...ただし、ユーザーには、他のコレクションへの外部キーであるフィールドがたくさんあります。

たとえば、これらのフィールドの 1 つは rolify 用です。role_idsのように見えますが"role_ids" : [ObjectId("508eee5afa0d00b818000001"), ObjectId("508eee92fa0d00b818000002")]、それぞれが次のようなものにマップされadministratorますmoderator

私がやりたいことは、これらの ID をロール コレクションの実際のドキュメントに置き換えることです。手動で入力できることはわかっていますが、Mongoid を使用して自動的に入力する方法があることを望んでいました。

4

1 に答える 1

2

Mongoid を自分で使用したことはありませんが、ActiveRecord を使用すると、次のようになります。

render :json => @users, :include => [:roles]

もちろん、これにはUserモデルにroles関連セットが必要です。

これが Mongoid にも関連していることを願っています。

于 2012-10-30T19:22:26.467 に答える