Module: Manhattan::ClassMethods
- Defined in:
- lib/manhattan.rb
Instance Attribute Summary collapse
-
#default_status_value ⇒ Object
Returns the value of attribute default_status_value.
-
#status_column_name ⇒ Object
Returns the value of attribute status_column_name.
Instance Method Summary collapse
Instance Attribute Details
#default_status_value ⇒ Object
Returns the value of attribute default_status_value.
38 39 40 |
# File 'lib/manhattan.rb', line 38 def default_status_value @default_status_value end |
#status_column_name ⇒ Object
Returns the value of attribute status_column_name.
38 39 40 |
# File 'lib/manhattan.rb', line 38 def status_column_name @status_column_name end |
Instance Method Details
#has_statuses(*statuses) ⇒ Object
40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 |
# File 'lib/manhattan.rb', line 40 def has_statuses(*statuses) = statuses.pop if statuses.last.is_a? Hash ||= {} common_methods = statuses & self.methods raise Manhattan::AlreadyDefinedMethod, "Already defined method #{common_methods}" unless common_methods.empty? @status_column_name = [:column_name] @status_column_name ||= :status @default_status_value = [:default_value] @statuses_names = localize_names(statuses) after_initialize :set_default_value statuses.each_with_index do |status, index| add_to_statuses_hash(status, index) create_query_methods(status) end end |
#status(queried_status) ⇒ Object
62 63 64 |
# File 'lib/manhattan.rb', line 62 def status(queried_status) @statuses[queried_status] end |
#statuses ⇒ Object
66 67 68 |
# File 'lib/manhattan.rb', line 66 def statuses @statuses.values end |