我正在为我的rails应用程序构建自动完成功能。输入表单在keypress上进行ajax调用,然后在rails
中调用此搜索方法def search
search = Regexp.new(params[:name])
@users = User.where(:name=>search)
render :json => @users
end
一切正常......但是,用户有一堆字段是其他集合的外键。
例如,其中一个字段用于rolify。 role_ids
看起来像"role_ids" : [ObjectId("508eee5afa0d00b818000001"), ObjectId("508eee92fa0d00b818000002")]
,每个映射到administrator
或moderator
我想要做的是将这些ID替换为来自roles集合的实际文档。我知道我可以手动填写它,但我希望有一些方法可以让Mongoid自动填充。
答案 0 :(得分:2)
我自己没有使用过Mongoid,但是使用ActiveRecord你会这样做:
render :json => @users, :include => [:roles]
这当然需要您的User
模型设置roles
关联。
希望这也与Mongoid有关。