class ExpressSettings::InstallGenerator
Public Instance Methods
add_routes()
click to toggle source
# File lib/generators/express_settings/install/install_generator.rb, line 32 def add_routes inject_into_file 'config/routes.rb', "resource :setting, only: [:show, :update]\n\n", after: "#{@module_class}::Engine.routes.draw do\n" end
add_settings_to_engine()
click to toggle source
# File lib/generators/express_settings/install/install_generator.rb, line 18 def add_settings_to_engine engine_path = File.join('lib', @module_name, 'engine.rb') engine_settings_class_method = <<-RUBY def self.settings #{@module_class}::Setting.first_or_create end RUBY inject_into_file engine_path, engine_settings_class_method, after: /module #{@module_class}/ prepend_to_file engine_path, "require 'express_settings'\n\n" end
create_model_controller_and_migration()
click to toggle source
# File lib/generators/express_settings/install/install_generator.rb, line 5 def create_model_controller_and_migration @module_name = destination_root.split('/').last @module_class = @module_name.camelize template 'model/model.rb', File.join('app', 'models', @module_name, 'setting.rb') invoke 'active_record:migration', ["create_#{@module_name}_settings", 'data:text'] template 'controller/controller.rb', File.join('app', 'controllers', @module_name, 'admin', 'settings_controller.rb') end
create_view()
click to toggle source
# File lib/generators/express_settings/install/install_generator.rb, line 14 def create_view template 'show.html.et.erb', File.join('app', 'views', @module_name, 'admin', 'settings', 'show.html.et') end