MongoDB 关于mongoid中的meta_search

rainchen · 发布于 2012年4月14日 · 最后由 simlegate 回复于 2013年3月13日 · 1918 次阅读
377

目前需要使用mongoid的项目中加入一些复杂搜索,看了下貌似没有现成的gem, 试了下 用meta_search,在model中加入了include MetaSearch::Searches::ActiveRecord (不知道插入的姿势对不对)后用MyModel.search(params[:search]) 会报一个undefined method `joins_values' 错误。

另外不是需要full text,所以不考虑 mongoid_fulltext mongoid-sphinx sunspot_mongoid mongoid_search 这些

搜索到一个scoped-search,不过是2010的,目前在研究中

有经验的同学分享下相关经验或推荐一些好gem

共收到 2 条回复
377

scoped_search 老是老了点,不过还是可以勉强一战,分享下我现在的做法抛砖引玉:

get :search do @search = Notification.scoped_search(params[:search] search_scope = @search.scoped defaul_scope = current_user.notifications result_scope = search_scope.merge defaul_scope @notifications = result_scope

render 'notifications/search' end

3672

#1楼 @rainchen 这东西貌似只支持ActiveRecord吧

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册