class Natra::Generators::ControllerGenerator

Attributes

class_name[R]
controller_name[R]
file_name[R]

Public Class Methods

source_root() click to toggle source
# File lib/natra/generators/controller/controller_generator.rb, line 14
def self.source_root
  File.dirname(__FILE__)
end

Public Instance Methods

create_controller() click to toggle source
# File lib/natra/generators/controller/controller_generator.rb, line 24
def create_controller
  template 'templates/controller.rb.erb', File.join('app/controllers', "#{file_name}.rb")
  insert_into_file 'config.ru', "use #{class_name}\n", after: "run ApplicationController\n"
end
create_views() click to toggle source
# File lib/natra/generators/controller/controller_generator.rb, line 29
def create_views
  return unless options[:views]

  directory 'templates/views', File.join('app/views', controller_name.to_s)
end
setup() click to toggle source
# File lib/natra/generators/controller/controller_generator.rb, line 18
def setup
  @controller_name = name.pluralize.underscore
  @class_name      = "#{controller_name.camel_case}Controller"
  @file_name       = class_name.underscore
end