Class: AdminViewGenerator
- Inherits:
-
Rails::Generators::NamedBase
- Object
- Rails::Generators::NamedBase
- AdminViewGenerator
- Includes:
- Rails::Generators::ResourceHelpers
- Defined in:
- lib/generators/admin_view_generator.rb
Instance Method Summary collapse
- #add_resource_route ⇒ Object
- #create_base_controller ⇒ Object
- #create_base_controller_spec ⇒ Object
- #create_controller ⇒ Object
- #create_controller_rspec ⇒ Object
- #create_helper ⇒ Object
- #create_views ⇒ Object
Instance Method Details
#add_resource_route ⇒ Object
50 51 52 53 54 55 56 |
# File 'lib/generators/admin_view_generator.rb', line 50 def add_resource_route return if not File.exists?("config/routes.rb") route_config = "namespace :admin do " route_config << "resources :#{file_name.pluralize}" route_config << " end" route route_config end |
#create_base_controller ⇒ Object
16 17 18 19 20 |
# File 'lib/generators/admin_view_generator.rb', line 16 def create_base_controller empty_directory "app/controllers/admin" path = File.join("app/controllers/admin", "base_controller.rb") template("base_controller.rb", path) unless File.exists?(path) end |
#create_base_controller_spec ⇒ Object
22 23 24 25 26 |
# File 'lib/generators/admin_view_generator.rb', line 22 def create_base_controller_spec empty_directory "spec/controllers/admin" path = File.join("spec/controllers/admin", "base_controller_spec.rb") template("base_controller_spec.rb", path) unless File.exists?(path) end |
#create_controller ⇒ Object
28 29 30 31 |
# File 'lib/generators/admin_view_generator.rb', line 28 def create_controller @attributes_symbols = get_model_columns.dup.delete_if {|attribute| ['id', 'created_at', 'updated_at'].include? attribute.name }.collect {|attribute| ":#{attribute.name}" } template "controller.rb", File.join("app/controllers/admin", "#{controller_file_name}_controller.rb") end |
#create_controller_rspec ⇒ Object
33 34 35 |
# File 'lib/generators/admin_view_generator.rb', line 33 def create_controller_rspec template "controller_spec.rb", File.join("spec/controllers/admin", "#{controller_file_name}_controller_spec.rb") end |
#create_helper ⇒ Object
37 38 39 40 |
# File 'lib/generators/admin_view_generator.rb', line 37 def create_helper empty_directory "app/helpers/admin" template "base_helper.rb", File.join("app/helpers/admin", "base_helper.rb") end |
#create_views ⇒ Object
42 43 44 45 46 47 48 |
# File 'lib/generators/admin_view_generator.rb', line 42 def create_views empty_directory "app/views/admin/#{controller_file_name}" @attributes = get_model_columns available_views.each do |view| template "views/#{view}.html.erb", File.join("app/views/admin", controller_file_name, "#{view}.html.erb") end end |