class ActiverecordSettings::Setting
Public Class Methods
destroy(key)
click to toggle source
# File lib/activerecord_settings.rb, line 38 def self.destroy(key) find_by_key(key).try(:destroy) end
get(key)
click to toggle source
# File lib/activerecord_settings.rb, line 12 def self.get(key) setting = find_by_key(key) return nil unless setting if setting.expires && setting.expires < Time.now destroy(key) return nil end YAML.load(setting.value) end
set(key, value, expires: nil)
click to toggle source
# File lib/activerecord_settings.rb, line 24 def self.set(key, value, expires: nil) destroy(key) if value.nil? setting = { value: YAML.dump(value), expires: expires } existing = find_by_key(key) if existing existing.update(setting) else create({ key: key }.merge(setting)) end end