class MegaBar::MegaBarModelsGenerator
Public Instance Methods
create_controller_file()
click to toggle source
in generators, all public methods are run. Weird, huh?
# File lib/generators/mega_bar/mega_bar_models/mega_bar_models_generator.rb, line 11 def create_controller_file @@notices << "You will have to copy your controller manually over to the megabar gem" if gem_path == '' && modyule == 'MegaBar' template 'generic_controller.rb', "#{gem_path}#{the_controller_file_path}#{the_controller_file_name}.rb" end
create_controller_spec_file()
click to toggle source
# File lib/generators/mega_bar/mega_bar_models/mega_bar_models_generator.rb, line 30 def create_controller_spec_file template 'generic_controller_spec.rb', "#{gem_path}#{the_controller_spec_file_path}#{the_controller_spec_file_name}.rb" @@notices << "You will have to copy the spec file yourself manually to the megabar repo's spec/controllers directory" if gem_path == '' && modyule == 'MegaBar' end
create_factory()
click to toggle source
# File lib/generators/mega_bar/mega_bar_models/mega_bar_models_generator.rb, line 35 def create_factory @@notices << "You will have to copy the factory file yourself manually to the megabar repo's spec/internal/factories directory" if gem_path == '' && modyule == 'MegaBar' template 'generic_factory.rb', "#{gem_path}#{the_factory_file_path}#{the_model_file_name}.rb" end
create_model_file()
click to toggle source
# File lib/generators/mega_bar/mega_bar_models/mega_bar_models_generator.rb, line 15 def create_model_file template 'generic_model.rb', "#{gem_path}#{the_model_file_path}#{the_model_file_name}.rb" @@notices << "You will have to copy your model files manually over to the megabar gem" if gem_path == '' && modyule == 'MegaBar' template "generic_tmp_model.rb", "#{gem_path}#{the_model_file_path}tmp_#{the_model_file_name}.rb" if modyule == 'MegaBar' end
generate_migration()
click to toggle source
# File lib/generators/mega_bar/mega_bar_models/mega_bar_models_generator.rb, line 20 def generate_migration if the_module_name generate 'migration create_' + the_table_name + ' created_at:datetime updated_at:datetime' generate 'migration create_' + 'mega_bar_tmp_' + classname.underscore.downcase.pluralize + ' created_at:datetime updated_at:datetime' if modyule == 'MegaBar' @@notices << "You will have to copy your Migrations manually over to the megabar gem" else generate 'migration create_' + the_table_name + ' created_at:datetime updated_at:datetime' end end
write_notices()
click to toggle source
# File lib/generators/mega_bar/mega_bar_models/mega_bar_models_generator.rb, line 40 def write_notices # todo .. take @@notices and write it to a db? or a file? hmm.. end
Private Instance Methods
gem_path()
click to toggle source
# File lib/generators/mega_bar/mega_bar_models/mega_bar_models_generator.rb, line 47 def gem_path return 'spec/internal/' if Rails.env == 'test' File.directory?(Rails.root + '../megabar/') && modyule == 'MegaBar' ? Rails.root + '../megabar/' : '' end
the_controller_file_name()
click to toggle source
# File lib/generators/mega_bar/mega_bar_models/mega_bar_models_generator.rb, line 53 def the_controller_file_name classname.pluralize.underscore + "_controller" end
the_controller_file_path()
click to toggle source
# File lib/generators/mega_bar/mega_bar_models/mega_bar_models_generator.rb, line 57 def the_controller_file_path if the_module_name 'app/controllers/' + the_module_path + '/' else 'app/controllers/' end end
the_controller_name()
click to toggle source
# File lib/generators/mega_bar/mega_bar_models/mega_bar_models_generator.rb, line 65 def the_controller_name classname.pluralize + 'Controller' end
the_controller_spec_file_name()
click to toggle source
# File lib/generators/mega_bar/mega_bar_models/mega_bar_models_generator.rb, line 69 def the_controller_spec_file_name classname.pluralize.underscore + "_controller_spec" end
the_controller_spec_file_path()
click to toggle source
# File lib/generators/mega_bar/mega_bar_models/mega_bar_models_generator.rb, line 73 def the_controller_spec_file_path if the_module_name && gem_path == '' 'spec/controllers/' + the_module_path + '/' else 'spec/controllers/' end end
the_factory_file_path()
click to toggle source
# File lib/generators/mega_bar/mega_bar_models/mega_bar_models_generator.rb, line 81 def the_factory_file_path if the_module_name == 'MegaBar' 'spec/internal/factories/' else 'spec/factories/' end end
the_model_file_name()
click to toggle source
# File lib/generators/mega_bar/mega_bar_models/mega_bar_models_generator.rb, line 89 def the_model_file_name classname.to_s.singularize.underscore end
the_model_file_path()
click to toggle source
# File lib/generators/mega_bar/mega_bar_models/mega_bar_models_generator.rb, line 93 def the_model_file_path if the_module_name 'app/models/' + the_module_path + '/' else 'app/models/' end end
the_module_array()
click to toggle source
# File lib/generators/mega_bar/mega_bar_models/mega_bar_models_generator.rb, line 101 def the_module_array the_module_name.nil? || the_module_name.empty? ? [] : the_module_name.split('::') end
the_module_name()
click to toggle source
# File lib/generators/mega_bar/mega_bar_models/mega_bar_models_generator.rb, line 105 def the_module_name modyule == 'no_mod' ? nil : modyule end
the_module_path()
click to toggle source
# File lib/generators/mega_bar/mega_bar_models/mega_bar_models_generator.rb, line 109 def the_module_path return '' if modyule == 'no_mod' the_module_name.split('::').map { |m| m.underscore }.join('/') end
the_route_name()
click to toggle source
# File lib/generators/mega_bar/mega_bar_models/mega_bar_models_generator.rb, line 114 def the_route_name classname.pluralize.underscore end
the_route_path()
click to toggle source
# File lib/generators/mega_bar/mega_bar_models/mega_bar_models_generator.rb, line 118 def the_route_path the_route_name.include?('_') ? the_route_name.gsub('_', '-') : the_route_name end
the_table_name()
click to toggle source
# File lib/generators/mega_bar/mega_bar_models/mega_bar_models_generator.rb, line 122 def the_table_name prefix = the_module_name.nil? || the_module_name.empty? ? '' : the_module_name.split('::').map { | m | m.underscore }.join('_') + '_' prefix + classname.pluralize.underscore end
use_route()
click to toggle source
# File lib/generators/mega_bar/mega_bar_models/mega_bar_models_generator.rb, line 127 def use_route return '' if the_module_name.nil? || the_module_name.empty? the_module_name.split('::').size == 1 ? 'use_route: ' + the_module_name + ', ' : '' #else might could be improved for other modules. end