class Rails::AppBuilder
The application builder allows you to override elements of the application generator without being forced to reverse the operations of the default generator.
This allows you to override entire operations, like the creation of the Gemfile, README, or JavaScript files, without needing to know exactly what those operations do so you can create another template action.
Public Instance Methods
app()
click to toggle source
# File lib/rails/generators/rails/app/app_generator.rb, line 56 def app directory 'app' git_keep 'app/mailers' git_keep 'app/models' end
config()
click to toggle source
# File lib/rails/generators/rails/app/app_generator.rb, line 62 def config empty_directory "config" inside "config" do template "routes.rb" template "application.rb" template "environment.rb" directory "environments" directory "initializers" directory "locales" end end
configru()
click to toggle source
# File lib/rails/generators/rails/app/app_generator.rb, line 48 def configru template "config.ru" end
database_yml()
click to toggle source
# File lib/rails/generators/rails/app/app_generator.rb, line 76 def database_yml template "config/databases/#{options[:database]}.yml", "config/database.yml" end
db()
click to toggle source
# File lib/rails/generators/rails/app/app_generator.rb, line 80 def db directory "db" end
doc()
click to toggle source
# File lib/rails/generators/rails/app/app_generator.rb, line 84 def doc directory "doc" end
gemfile()
click to toggle source
# File lib/rails/generators/rails/app/app_generator.rb, line 44 def gemfile template "Gemfile" end
gitignore()
click to toggle source
# File lib/rails/generators/rails/app/app_generator.rb, line 52 def gitignore copy_file "gitignore", ".gitignore" end
lib()
click to toggle source
# File lib/rails/generators/rails/app/app_generator.rb, line 88 def lib empty_directory "lib" empty_directory_with_gitkeep "lib/tasks" empty_directory_with_gitkeep "lib/assets" end
log()
click to toggle source
# File lib/rails/generators/rails/app/app_generator.rb, line 94 def log empty_directory_with_gitkeep "log" end
public_directory()
click to toggle source
# File lib/rails/generators/rails/app/app_generator.rb, line 98 def public_directory directory "public", "public", :recursive => false end
rakefile()
click to toggle source
# File lib/rails/generators/rails/app/app_generator.rb, line 36 def rakefile template "Rakefile" end
readme()
click to toggle source
# File lib/rails/generators/rails/app/app_generator.rb, line 40 def readme copy_file "README", "README.rdoc" end
script()
click to toggle source
# File lib/rails/generators/rails/app/app_generator.rb, line 102 def script directory "script" do |content| "#{shebang}\n" + content end chmod "script", 0755 & ~File.umask, :verbose => false end
test()
click to toggle source
# File lib/rails/generators/rails/app/app_generator.rb, line 109 def test empty_directory_with_gitkeep "test/fixtures" empty_directory_with_gitkeep "test/functional" empty_directory_with_gitkeep "test/integration" empty_directory_with_gitkeep "test/unit" template "test/performance/browsing_test.rb" template "test/test_helper.rb" end
tmp()
click to toggle source
# File lib/rails/generators/rails/app/app_generator.rb, line 119 def tmp empty_directory "tmp/cache" empty_directory "tmp/cache/assets" end
vendor()
click to toggle source
# File lib/rails/generators/rails/app/app_generator.rb, line 124 def vendor vendor_javascripts vendor_stylesheets vendor_plugins end
vendor_javascripts()
click to toggle source
# File lib/rails/generators/rails/app/app_generator.rb, line 130 def vendor_javascripts empty_directory_with_gitkeep "vendor/assets/javascripts" end
vendor_plugins()
click to toggle source
# File lib/rails/generators/rails/app/app_generator.rb, line 138 def vendor_plugins empty_directory_with_gitkeep "vendor/plugins" end
vendor_stylesheets()
click to toggle source
# File lib/rails/generators/rails/app/app_generator.rb, line 134 def vendor_stylesheets empty_directory_with_gitkeep "vendor/assets/stylesheets" end