Class: Admin::Generators::ScaffoldControllerGenerator
- Inherits:
-
Rails::Generators::NamedBase
- Object
- Rails::Generators::NamedBase
- Admin::Generators::ScaffoldControllerGenerator
- Includes:
- Rails::Generators::ResourceHelpers
- Defined in:
- lib/generators/admin/scaffold_controller/scaffold_controller_generator.rb
Instance Method Summary collapse
- #attributes_hash ⇒ Object
- #available_views ⇒ Object
- #copy_view_files ⇒ Object
- #create_controller_files ⇒ Object
- #create_test_files ⇒ Object
- #parent_controller_class_name ⇒ Object
- #plural_table_name_camelcase ⇒ Object
- #prefix ⇒ Object
- #prefixed_class_name ⇒ Object
- #prefixed_controller_class_name ⇒ Object
- #prefixed_index_helper ⇒ Object
- #prefixed_plain_model_url ⇒ Object
- #prefixed_route_url ⇒ Object
- #singular_table_name_camelcase ⇒ Object
Instance Method Details
#attributes_hash ⇒ Object
45 46 47 48 49 50 51 52 53 54 55 |
# File 'lib/generators/admin/scaffold_controller/scaffold_controller_generator.rb', line 45 def attributes_hash return if attributes_names.empty? attributes_names.map do |name| if %w(password password_confirmation).include?(name) && attributes.any?(&:password_digest?) "#{name}: 'secret'" else "#{name}: @#{singular_table_name}.#{name}" end end.sort.join(', ') end |
#available_views ⇒ Object
85 86 87 |
# File 'lib/generators/admin/scaffold_controller/scaffold_controller_generator.rb', line 85 def available_views %w(index edit show new _form) end |
#copy_view_files ⇒ Object
34 35 36 37 38 39 |
# File 'lib/generators/admin/scaffold_controller/scaffold_controller_generator.rb', line 34 def copy_view_files available_views.each do |view| template_path = "views/erb/#{view}.html.erb.erb" template template_path, File.join("app/views", prefix, controller_file_path, "#{view}.html.erb") end end |
#create_controller_files ⇒ Object
27 28 29 30 31 32 |
# File 'lib/generators/admin/scaffold_controller/scaffold_controller_generator.rb', line 27 def create_controller_files # I think there should be a better way to detect if jbuilder is in use # If you know it, please let me know template "controllers/controller.rb.erb", File.join('app/controllers', prefix, class_path, "#{controller_file_name}_controller.rb") # create_file "app/controllers/a.rb", "# Add initialization content here" end |
#create_test_files ⇒ Object
41 42 43 |
# File 'lib/generators/admin/scaffold_controller/scaffold_controller_generator.rb', line 41 def create_test_files template "tests/test_unit/functional_test.rb.erb", File.join("test/controllers", prefix, controller_class_path, "#{controller_file_name}_controller_test.rb") end |
#parent_controller_class_name ⇒ Object
65 66 67 |
# File 'lib/generators/admin/scaffold_controller/scaffold_controller_generator.rb', line 65 def parent_controller_class_name [:parent_controller].camelcase end |
#plural_table_name_camelcase ⇒ Object
89 90 91 |
# File 'lib/generators/admin/scaffold_controller/scaffold_controller_generator.rb', line 89 def plural_table_name_camelcase plural_table_name.camelcase end |
#prefix ⇒ Object
57 58 59 |
# File 'lib/generators/admin/scaffold_controller/scaffold_controller_generator.rb', line 57 def prefix [:prefix_name] end |
#prefixed_class_name ⇒ Object
69 70 71 |
# File 'lib/generators/admin/scaffold_controller/scaffold_controller_generator.rb', line 69 def prefixed_class_name "#{prefix.capitalize}::#{class_name}" end |
#prefixed_controller_class_name ⇒ Object
61 62 63 |
# File 'lib/generators/admin/scaffold_controller/scaffold_controller_generator.rb', line 61 def prefixed_controller_class_name "#{prefix.camelcase}::#{controller_class_name}" end |
#prefixed_index_helper ⇒ Object
81 82 83 |
# File 'lib/generators/admin/scaffold_controller/scaffold_controller_generator.rb', line 81 def prefixed_index_helper "#{prefix}_#{index_helper}" end |
#prefixed_plain_model_url ⇒ Object
77 78 79 |
# File 'lib/generators/admin/scaffold_controller/scaffold_controller_generator.rb', line 77 def prefixed_plain_model_url "#{prefix}_#{singular_table_name}" end |
#prefixed_route_url ⇒ Object
73 74 75 |
# File 'lib/generators/admin/scaffold_controller/scaffold_controller_generator.rb', line 73 def prefixed_route_url "/#{prefix}#{route_url}" end |
#singular_table_name_camelcase ⇒ Object
93 94 95 |
# File 'lib/generators/admin/scaffold_controller/scaffold_controller_generator.rb', line 93 def singular_table_name_camelcase singular_table_name.camelcase end |