lib/generators/super_scaffold/field/field_generator.rb
require_relative "../super_scaffold_base" class FieldGenerator < Rails::Generators::Base include SuperScaffoldBase source_root File.expand_path("templates", __dir__) namespace "super_scaffold:field" argument :model, type: :string argument :attributes, type: :array, default: [], banner: "attribute:type attribute:type" class_option :skip_migration_generation, type: :boolean, default: false, desc: "Don't generate the model migration" class_option :skip_form, type: :boolean, default: false, desc: "Don't alter the new/edit form" class_option :skip_show, type: :boolean, default: false, desc: "Don't alter the show view" class_option :skip_table, type: :boolean, default: false, desc: "Only add to the new/edit form and show view." class_option :skip_locales, type: :boolean, default: false, desc: "Don't alter locale files" class_option :skip_api, type: :boolean, default: false, desc: "Don't alter the api payloads" class_option :skip_model, type: :boolean, default: false, desc: "Don't alter the model file" def generate # We add the name of the specific super_scaffolding command that we want to # invoke to the beginning of the argument string. ARGV.unshift "crud-field" BulletTrain::SuperScaffolding::Runner.new.run end end