Class: ControllerGenerator
- Inherits:
-
Rails::Generators::NamedBase
- Object
- Rails::Generators::NamedBase
- ControllerGenerator
- Defined in:
- lib/generators/controller/controller_generator.rb
Constant Summary collapse
- NON_TEMPLATE_ACTIONS =
%w[create update destroy]
Instance Attribute Summary collapse
-
#namespace ⇒ Object
readonly
Returns the value of attribute namespace.
Instance Method Summary collapse
- #authenticate_actor ⇒ Object private
- #authenticate_actor? ⇒ Boolean private
- #copy_template_file ⇒ Object
- #create_flash_message ⇒ Object private
- #destroy_flash_message ⇒ Object private
- #file_path ⇒ Object private
- #namespace_path ⇒ Object private
- #parent_class_name ⇒ Object private
- #singular_name ⇒ Object private
- #template_file_path(temp_name) ⇒ Object private
- #update_flash_message ⇒ Object private
Instance Attribute Details
#namespace ⇒ Object (readonly)
Returns the value of attribute namespace.
16 17 18 |
# File 'lib/generators/controller/controller_generator.rb', line 16 def namespace @namespace end |
Instance Method Details
#authenticate_actor ⇒ Object (private)
72 73 74 |
# File 'lib/generators/controller/controller_generator.rb', line 72 def authenticate_actor ['authenticate'] end |
#authenticate_actor? ⇒ Boolean (private)
68 69 70 |
# File 'lib/generators/controller/controller_generator.rb', line 68 def authenticate_actor? ['authenticate'].present? end |
#copy_template_file ⇒ Object
18 19 20 21 22 23 24 25 26 |
# File 'lib/generators/controller/controller_generator.rb', line 18 def copy_template_file @namespace = class_name.split("::") @namespace.pop @namespace = @namespace.join("::") template "controller.rb.erb", file_path (actions - NON_TEMPLATE_ACTIONS).each do |temp_name| template "view.html.slim", template_file_path(temp_name) end end |
#create_flash_message ⇒ Object (private)
30 31 32 |
# File 'lib/generators/controller/controller_generator.rb', line 30 def "Successfully created #{singular_name}" end |
#destroy_flash_message ⇒ Object (private)
38 39 40 |
# File 'lib/generators/controller/controller_generator.rb', line 38 def "Successfully destroyed #{singular_name}" end |
#file_path ⇒ Object (private)
42 43 44 45 |
# File 'lib/generators/controller/controller_generator.rb', line 42 def file_path Rails.root.join('app', 'controllers', namespace_path + file_name + "_controller.rb") end |
#namespace_path ⇒ Object (private)
52 53 54 55 56 57 58 |
# File 'lib/generators/controller/controller_generator.rb', line 52 def namespace_path if namespace.blank? return "" else namespace.split("::").map(&:underscore).join("/") + "/" end end |
#parent_class_name ⇒ Object (private)
64 65 66 |
# File 'lib/generators/controller/controller_generator.rb', line 64 def parent_class_name namespace.blank? ? 'ApplicationController' : namespace + "::BaseController" end |
#singular_name ⇒ Object (private)
60 61 62 |
# File 'lib/generators/controller/controller_generator.rb', line 60 def singular_name super.singularize end |
#template_file_path(temp_name) ⇒ Object (private)
47 48 49 50 |
# File 'lib/generators/controller/controller_generator.rb', line 47 def template_file_path(temp_name) Rails.root.join('app', 'views', namespace_path + file_name, temp_name + ".html.slim") end |
#update_flash_message ⇒ Object (private)
34 35 36 |
# File 'lib/generators/controller/controller_generator.rb', line 34 def "Successfully updated #{singular_name}" end |