Module: Sequel::Plugins::LazyAttributes::ClassMethods

Defined in:
lib/sequel/plugins/lazy_attributes.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#lazy_attributes_moduleObject

Module to store the lazy attribute getter methods, so they can be overridden and call super to get the lazy attribute behavior



37
38
39
# File 'lib/sequel/plugins/lazy_attributes.rb', line 37

def lazy_attributes_module
  @lazy_attributes_module
end

Instance Method Details

#lazy_attributes(*attrs) ⇒ Object

Remove the given attributes from the list of columns selected by default. For each attribute given, create an accessor method that allows a lazy lookup of the attribute. Each attribute should be given as a symbol.



42
43
44
45
# File 'lib/sequel/plugins/lazy_attributes.rb', line 42

def lazy_attributes(*attrs)
  set_dataset(dataset.select(*(columns - attrs)))
  attrs.each{|a| define_lazy_attribute_getter(a)}
end