module NoBrainer::Boolean::NoBrainerExtensions
Constants
- InvalidType
Public Instance Methods
nobrainer_cast_user_to_model(value)
click to toggle source
# File lib/no_brainer/document/types/boolean.rb, line 10 def nobrainer_cast_user_to_model(value) case value when TrueClass then true when FalseClass then false when String, Integer value = value.to_s.strip.downcase return true if value.in? %w(true yes t 1) return false if value.in? %w(false no f 0) raise InvalidType else raise InvalidType end end
nobrainer_field_defined(model, attr, options={})
click to toggle source
# File lib/no_brainer/document/types/boolean.rb, line 23 def nobrainer_field_defined(model, attr, options={}) model.inject_in_layer :types do define_method("#{attr}?") { !!read_attribute(attr) } end end
nobrainer_field_undefined(model, attr, options={})
click to toggle source
# File lib/no_brainer/document/types/boolean.rb, line 29 def nobrainer_field_undefined(model, attr, options={}) model.inject_in_layer :types do remove_method("#{attr}?") end end