class Rails::Generator::Commands::Create

Here's a readable version of the long string used above in route_code; but it should be kept on one line to avoid inserting extra whitespace into routes.rb when the generator is run: “map.#{route_options} '#{route_options}',

:controller => '#{route_options[:controller]}',
:action => '#{route_options[:action]}'"

Public Instance Methods

gem(gem_options) click to toggle source
# File lib/generators/generator_extensions.rb, line 46
def gem(gem_options)
  sentinel = 'Rails::Initializer.run do |config|'
  unless gsub_file_check 'config/environment.rb', /(#{Regexp.escape(gem_code(gem_options))})/mi
    logger.gem gem_code(gem_options)
    gsub_file 'config/environment.rb', /(#{Regexp.escape(sentinel)})/mi do |m|
        "#{m}\n  #{gem_code(gem_options)}"
    end
  else
    logger.identical gem_code(gem_options)
  end
end
route(route_options) click to toggle source
# File lib/generators/generator_extensions.rb, line 34
def route(route_options)
  sentinel = 'ActionController::Routing::Routes.draw do |map|'
  unless gsub_file_check 'config/routes.rb', /(#{Regexp.escape(route_code(route_options))})/mi
    logger.route route_code(route_options)
    gsub_file 'config/routes.rb', /(#{Regexp.escape(sentinel)})/mi do |m|
        "#{m}\n  #{route_code(route_options)}"
    end
  else
    logger.identical route_code(route_options)
  end
end