Sha256: 15c44705fa55fa1de153f48dc154844946e68cce8c84aeb6fb14de0a183faa27
Contents?: true
Size: 1.93 KB
Versions: 21
Compression:
Stored size: 1.93 KB
Contents
require 'rails/generators/active_record' module Adminpanel class InitializeGenerator < ActiveRecord::Generators::Base desc 'Generate the migrations necessary to start the gem' source_root File.expand_path("../templates", __FILE__) argument :name, type: :string, default: 'default', require: false class_option :'skip-section-uploader', type: :boolean, aliases: '-u', default: false, desc: 'Skip section uploader if true' class_option :'skip-migration', type: :boolean, aliases: '-m', default: false, desc: 'Skip initial migrations if true' class_option :'skip-setup', type: :boolean, aliases: '-p', default: false, desc: 'Skip setup if true' class_option :'skip-mount-engine', type: :boolean, aliases: '-engine', default: false, desc: 'Inject engine into routes' def create_initializer if !options[:'skip-setup'] copy_file 'adminpanel_setup.rb', 'config/initializers/adminpanel_setup.rb' end end def create_section_uploader if !options[:'skip-section-uploader'] copy_file 'section_uploader.rb', 'app/uploaders/adminpanel/section_uploader.rb' end end def inject_engine_into_routes if !options[:'skip-mount-engine'] && Dir.exists?(Rails.root.join('config')) && File.exists?(Rails.root.join('config', 'routes.rb')) inject_into_file 'config/routes.rb', after: 'Rails.application.routes.draw do' do indent "\n mount Adminpanel::Engine => '/panel'" end end end def create_adminpanel_migration if !options[:'skip-migration'] migration_template 'create_adminpanel_tables.rb', 'db/migrate/create_adminpanel_tables.rb' end end end end
Version data entries
21 entries across 21 versions & 1 rubygems