Sha256: 2754100195ee1930983425a9b0ed03e6cc1362150616eefdb6e9a83f35b161a3
Contents?: true
Size: 1.03 KB
Versions: 1
Compression:
Stored size: 1.03 KB
Contents
require 'active_record' module Seasyar class ActiveRecordStorage ## seasy storage implementation ## def name= name @name = name end def save target, weights, options = {} raise "source is not set" if options[:source].nil? source = options[:source] old = SeasyData.find_all_by_source source old.each { |data| data.delete } weights.keys.each do |k| i = Seasyar::SeasyData.new i.key = k i.target = target i.source = source i.weight = weights[k] i.index_name = @name i.save! end end def search question # todo : count hits..... hits = Seasyar::SeasyData.find_all_by_key_and_index_name question, @name result = {} hits.each do |one_hit| result[one_hit.target] = one_hit.weight end result end def remove deletee Seasyar::SeasyData.find_all_by_source( deletee ).each {|data| data.delete} end ## helper methods ## end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
seasyar-0.0.9 | lib/seasyar/activerecordstorage.rb |