【发布时间】:2011-10-06 18:36:00
【问题描述】:
有没有办法混合命名作用域和 sphinx 作用域?我不敢相信没有。
我有关于课程的狮身人面像索引。用户购买课程后,他们会在一个屏幕上看到所有课程的列表。我希望他们在站点范围的课程中执行相同的搜索,但仅限于他们拥有的课程。
这对于仅使用 sphinx 的范围显然是不可能的,因为我没有索引购买数据,我认为我也不应该这样做。
有没有办法做到这一点?
这就是我迄今为止“结合”这两个系统的方法。这对我来说似乎很老套,但它确实有效:
lesson_ids = current_user.active_products_by_type(:lessons).collect{|x| x.id}
@lessons = Lesson.active_scope.search :with => {:id => lesson_ids }
【问题讨论】:
标签: ruby-on-rails thinking-sphinx named-scope