我有一个用户模型。每个用户都有与其关联的餐厅名称。我有一个显示所有用户的视图(index.html.erb)。Ruby:比较两个数组的匹配,并按DESC顺序排列结果
我想基础上,CURRENT_USER和其他一些用户有多少餐馆有共同按降序排序该视图中的用户...(它相反!)
前。
用户1(CURRENT_USER)一直以麦当劳,汉堡王,阿拜的
用户2已经到了Ivar的
用户3一直以麦当劳,汉堡王
当用户1加载索引查看,用户应该显示的顺序是:
用户1(3/3餐馆匹配)
用户3(2/3餐馆匹配)
用户2(0/3餐馆匹配)
我User.rb文件
def compare_restaurants
self.restaurants.collect
end
我users_controller.rb
def index
@users = User.all.sort_by {|el| (el.compare_resturants & current_user.compare_resturants).length }
end
@echoback感谢您的回复,但是我得到了“不能转换成阵列..” – thedeepfield 2011-02-18 04:53:53