aboutsummaryrefslogtreecommitdiffstats
path: root/railties/lib/rails/generators/rails/controller/controller_generator.rb
diff options
context:
space:
mode:
Diffstat (limited to 'railties/lib/rails/generators/rails/controller/controller_generator.rb')
-rw-r--r--railties/lib/rails/generators/rails/controller/controller_generator.rb20
1 files changed, 20 insertions, 0 deletions
diff --git a/railties/lib/rails/generators/rails/controller/controller_generator.rb b/railties/lib/rails/generators/rails/controller/controller_generator.rb
new file mode 100644
index 0000000000..9788c0d0bc
--- /dev/null
+++ b/railties/lib/rails/generators/rails/controller/controller_generator.rb
@@ -0,0 +1,20 @@
+module Rails
+ module Generators
+ class ControllerGenerator < NamedBase
+ argument :actions, :type => :array, :default => [], :banner => "action action"
+ check_class_collision :suffix => "Controller"
+
+ def create_controller_files
+ template 'controller.rb', File.join('app/controllers', class_path, "#{file_name}_controller.rb")
+ end
+
+ def add_routes
+ actions.reverse.each do |action|
+ route %{get "#{file_name}/#{action}"}
+ end
+ end
+
+ hook_for :template_engine, :test_framework, :helper
+ end
+ end
+end