Sha256: 7f969e81894ba40bf8491d81e05c1a357bc5dfb5312bb9113a246d4e50b5776f
Contents?: true
Size: 1.03 KB
Versions: 12
Compression:
Stored size: 1.03 KB
Contents
require 'rails/generators' module Trackman class ControllerGenerator < Rails::Generators::Base source_root File.expand_path('../templates', __FILE__) argument :controller_name, :type => :string, :default => 'errors' @@actions = ['not_found', 'error', 'maintenance', 'maintenance_error'] @@routes = {'404' => 'not_found', '500' => 'error', '503' => 'maintenance', '503-error' => 'maintenance_error'} def create_controller template "controller_layout.rb.erb", "app/controllers/#{controller_name}_controller.rb" end def create_views create_views_for(:erb) end def create_routes @@routes.each do |k, v| route "match \"#{controller_name.camelize}/#{k}\", :to => \"#{controller_name}##{v}\"" end end protected def create_views_for(engine) view_folder = "app/views/#{controller_name}" layout = "view_layout.html.#{engine}" @@actions.each do |n| template layout, "#{view_folder}/#{n}.html.#{engine}" end end end end
Version data entries
12 entries across 12 versions & 1 rubygems