Class: ApacheAge::ScaffoldEdgeGenerator

Inherits:
Rails::Generators::NamedBase
  • Object
show all
Includes:
Rails::Generators::ResourceHelpers
Defined in:
lib/generators/apache_age/scaffold_edge/scaffold_edge_generator.rb

Instance Method Summary collapse

Instance Method Details

#copy_view_filesObject



35
36
37
38
39
40
41
42
43
44
# File 'lib/generators/apache_age/scaffold_edge/scaffold_edge_generator.rb', line 35

def copy_view_files
  available_views.each do |view|
    view_name = view == 'partial' ? "_#{singular_table_name}" : view
    filename = filename_with_extensions(view_name)
    template(
      "views/#{view}.html.erb.tt",
      File.join(Rails.root, "app/views", controller_file_path, filename)
    )
  end
end

#create_controller_filesObject



20
21
22
23
24
25
# File 'lib/generators/apache_age/scaffold_edge/scaffold_edge_generator.rb', line 20

def create_controller_files
  template(
    "controller.rb.tt",
    File.join(Rails.root, "app/controllers", controller_class_path, "#{controller_file_name}_controller.rb")
  )
end

#create_model_fileObject



16
17
18
# File 'lib/generators/apache_age/scaffold_edge/scaffold_edge_generator.rb', line 16

def create_model_file
  invoke 'apache_age:edge', [name] + attributes.collect { |attr| "#{attr.name}:#{attr.type}" }
end

#create_routeObject



27
28
29
30
31
32
33
# File 'lib/generators/apache_age/scaffold_edge/scaffold_edge_generator.rb', line 27

def create_route
  route_content = route_text(class_path, file_name)
  inject_into_file(
    File.join(Rails.root, 'config', 'routes.rb'), "\n#{route_content}",
    after: "Rails.application.routes.draw do"
  )
end