【发布时间】:2015-09-27 16:33:19
【问题描述】:
我正在尝试过滤具有多个条件的匹配记录数组,但似乎无法弄清楚,我尝试了很多不同的东西,并在谷歌上搜索了所有内容,但什么都没有......这是代码:
if @post.last_post?
@recommendations = @course.recommendations_for_subscriber(subscriber, category, language).first(3)
end
和辅助方法
def recommendations_for_subscriber subscriber, category, language
course_ids = subscriber.courses.pluck(:id)
recommendations.reject { |c| course_ids.include? c.id }
end
我要做的是将类别和语言作为条件传递给仅具有相同条件集的结果。 “.where” 不起作用,因为它不适用于数组,我似乎无法将它作为拒绝的补充传递。如果我们遇到彼此,任何想法都会非常感激并得到蛋糕奖励!
【问题讨论】:
-
您收到的错误信息是什么?当前输出的是什么?另外,如果不使用这些值,为什么要将
category和language传递给recommendations_for_subscriber方法?
标签: ruby-on-rails arrays ruby where pluck