Class: PodioCrm::ModelGenerator
- Inherits:
-
Rails::Generators::NamedBase
- Object
- Rails::Generators::NamedBase
- PodioCrm::ModelGenerator
- Defined in:
- lib/generators/podio_crm/model_generator.rb
Instance Method Summary collapse
- #app_id ⇒ Object
- #belongs ⇒ Object
- #generate_database_models ⇒ Object
- #generate_object_model ⇒ Object
- #get_fields ⇒ Object
- #set_app_id ⇒ Object
- #set_belongs_to ⇒ Object
Instance Method Details
#app_id ⇒ Object
43 44 45 |
# File 'lib/generators/podio_crm/model_generator.rb', line 43 def app_id @app_id.name end |
#belongs ⇒ Object
39 40 41 |
# File 'lib/generators/podio_crm/model_generator.rb', line 39 def belongs @belongs.name.parameterize.underscore.singularize end |
#generate_database_models ⇒ Object
31 32 33 |
# File 'lib/generators/podio_crm/model_generator.rb', line 31 def generate_database_models generate 'podio_crm:podio_crm', "#{name} #{app_id} #{concat_field_ids} #{belongs}:belongs_to" end |
#generate_object_model ⇒ Object
35 36 37 |
# File 'lib/generators/podio_crm/model_generator.rb', line 35 def generate_object_model template 'podio_crm_model.rb.erb', "app/models/#{file_name}.rb" end |
#get_fields ⇒ Object
15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
# File 'lib/generators/podio_crm/model_generator.rb', line 15 def get_fields @fields = [] authenticate_podio items = Podio::Item.find_all(app_id, limit: 1, offset: 1) items.all.each do |item| item.attributes[:fields].each do |field| @fields << { type: field['type'], field_id: field['field_id'], label: field['label'], values: field['values'], } end end end |
#set_app_id ⇒ Object
7 8 9 |
# File 'lib/generators/podio_crm/model_generator.rb', line 7 def set_app_id @app_id ||= attributes.shift end |
#set_belongs_to ⇒ Object
11 12 13 |
# File 'lib/generators/podio_crm/model_generator.rb', line 11 def set_belongs_to @belongs ||= attributes.shift end |