Module: EnumeratedAttr::Glue
- Defined in:
- lib/enumerated_attr.rb
Instance Method Summary collapse
Instance Method Details
#enumerated_attr(attribute, enumeration, options = {}) ⇒ Object
25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 |
# File 'lib/enumerated_attr.rb', line 25 def enumerated_attr(attribute, enumeration, = {}) enum = Attribute.new(self, attribute, enumeration) define_method "human_#{attribute}_value" do |value = false| enum.human(value || self.send(attribute)) end define_singleton_method "#{attribute}_enumeration" do enum.enumeration end if [:validates] validates attribute, :presence => true, :inclusion => enumeration end end |