Class: DevshopAdminGenerator
- Inherits:
-
Rails::Generators::Base
- Object
- Rails::Generators::Base
- DevshopAdminGenerator
- Defined in:
- lib/generators/devshop_admin_generator.rb
Instance Method Summary collapse
- #create_admin_layout ⇒ Object
- #create_admin_resource_controllers ⇒ Object
- #create_admin_view_sub_folders ⇒ Object
- #create_name_spaced_routes ⇒ Object
Instance Method Details
#create_admin_layout ⇒ Object
40 41 42 43 |
# File 'lib/generators/devshop_admin_generator.rb', line 40 def create_admin_layout ##admin layout template "admin.html.haml", "app/views/layouts/admin.html.haml" end |
#create_admin_resource_controllers ⇒ Object
46 47 48 49 50 51 52 53 54 55 |
# File 'lib/generators/devshop_admin_generator.rb', line 46 def create_admin_resource_controllers empty_directory "app/controllers/admin" ##create admin application controller template "admin_application_controller.rb", "app/controllers/admin/application_controller.rb" #iterate over each resource, creating the controller template resources.each do |resource| template "controller.rb", "app/controllers/admin/#{resource.pluralize}_controller.rb", resource: resource end end |
#create_admin_view_sub_folders ⇒ Object
9 10 11 12 13 14 15 16 17 18 |
# File 'lib/generators/devshop_admin_generator.rb', line 9 def create_admin_view_sub_folders resources.each do |resource| empty_directory "app/views/admin/#{resource.pluralize}" template "_form.html.haml", "app/views/admin/#{resource.pluralize}/_form.html.haml", resource: resource template "show.html.haml", "app/views/admin/#{resource.pluralize}/show.html.haml", resource: resource template "edit.html.haml", "app/views/admin/#{resource.pluralize}/edit.html.haml", resource: resource template "new.html.haml", "app/views/admin/#{resource.pluralize}/new.html.haml", resource: resource template "index.html.haml", "app/views/admin/#{resource.pluralize}/index.html.haml", resource: resource end end |
#create_name_spaced_routes ⇒ Object
21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 |
# File 'lib/generators/devshop_admin_generator.rb', line 21 def create_name_spaced_routes #remove example code which screws up the route insert gsub_file "config/routes.rb", /# namespace :admin do/, "" #add resources inside admin namespace insert_into_file "config/routes.rb", after: "namespace :admin do\n" do my_string = "\t\tresources " resources.each do |resource| my_string.concat ":#{resource.pluralize}" my_string.concat ", " unless resources.last == resource end my_string.concat "\n" end end |