module Bait::SimpleQuery

Public Class Methods

extended(base) click to toggle source
# File lib/bait/simple_query.rb, line 3
def self.extended(base)
  base.after_create do
    id_list = self.class.ids
    id_list << self.id
    self.class.ids = id_list
  end
  base.after_destroy do
    self.class.ids = self.class.ids.reject{|id| id == self.id}
  end
end

Public Instance Methods

all() click to toggle source
# File lib/bait/simple_query.rb, line 26
def all
  ids.map{|id| self.read(id)}
end
id_list_key() click to toggle source
# File lib/bait/simple_query.rb, line 14
def id_list_key
  "#{self.name.split('::').last.downcase}_ids"
end
ids() click to toggle source
# File lib/bait/simple_query.rb, line 18
def ids
  Bait.store.raw[id_list_key] ||= []
end
ids=(new_ids) click to toggle source
# File lib/bait/simple_query.rb, line 22
def ids=(new_ids)
  Bait.store.raw[id_list_key] = new_ids
end
last() click to toggle source
# File lib/bait/simple_query.rb, line 30
def last
  self.read(self.ids.last)
end