17 lines
318 B
Ruby
17 lines
318 B
Ruby
class Ratings
|
|
@ratings = Hash.new(0)
|
|
|
|
def initialize
|
|
ratings = TalkPreference.all.pluck(:talks).reduce(Hash.new(0)) do |result, talks|
|
|
talks.map(&:to_i).each { |talk| result[talk] += 1 }
|
|
result
|
|
end.to_h
|
|
|
|
@ratings = Hash.new(0).merge!(ratings)
|
|
end
|
|
|
|
def [](id)
|
|
@ratings[id]
|
|
end
|
|
end
|