Class: Kadim::Generators::ScaffoldControllerGenerator

Inherits:
Rails::Generators::NamedBase
  • Object
show all
Defined in:
lib/generators/kadim/scaffold_controller/scaffold_controller_generator.rb

Instance Method Summary collapse

Constructor Details

#initialize(args = [], local_options = {}, config = {}) ⇒ ScaffoldControllerGenerator

Returns a new instance of ScaffoldControllerGenerator.



6
7
8
9
10
11
# File 'lib/generators/kadim/scaffold_controller/scaffold_controller_generator.rb', line 6

def initialize(args = [], local_options = {}, config = {})
  @initial_args = args
  @initial_options = local_options
  @initial_config = config
  super
end

Instance Method Details

#scaffold_controllerObject



13
14
15
16
17
18
19
20
21
22
23
24
25
# File 'lib/generators/kadim/scaffold_controller/scaffold_controller_generator.rb', line 13

def scaffold_controller
  model_path = name.underscore
  unless Kadim.app_model_paths.include?(model_path)
    puts "Are you sure \"#{name}\" is a model?"
    return
  end

  @initial_args += Kadim.scaffold_attributes(model_path.camelize.constantize) if @initial_args.one?
  @initial_options.reject! { |option| option.starts_with?("-e") || option.starts_with?("--template-engine") }
  @initial_options << "--template-engine=erb"

  Kadim.scaffold_controller(@initial_args, @initial_options, @initial_config)
end