Sha256: 48bdeb54238a858b742fa01df11186e28d0b7c600b73d04682f3915765ca7aea
Contents?: true
Size: 709 Bytes
Versions: 2
Compression:
Stored size: 709 Bytes
Contents
module Recommendations class Item include Item::Ratings include Item::Similarity attr_accessor :id attr_writer :categories def initialize(id, categories = {}) @id, @categories = id, categories end def categories @categories || {} end def save! Recommendations.redis.hmset("recommendations:item:#{id}", *categories.flatten) categories.each do |category, score| Recommendations.redis.hset("recommendations:categories:#{category}", id, score) end end def self.find(id) categories = Recommendations.redis.hgetall("recommendations:item:#{id}") new(id, categories) end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
recommendations2-0.0.5 | lib/recommendations/item.rb |
recommendations2-0.0.4 | lib/recommendations/item.rb |