Class: ActionDispatch::Routing::Mapper::Resources::Resource
- Defined in:
- actionpack/lib/action_dispatch/routing/mapper.rb
Overview
:nodoc:
Direct Known Subclasses
Instance Attribute Summary collapse
-
#controller ⇒ Object
readonly
Returns the value of attribute controller.
-
#options ⇒ Object
readonly
Returns the value of attribute options.
-
#param ⇒ Object
readonly
Returns the value of attribute param.
-
#path ⇒ Object
(also: #collection_scope)
readonly
Returns the value of attribute path.
Instance Method Summary collapse
- #actions ⇒ Object
-
#collection_name ⇒ Object
Checks for uncountable plurals, and appends “_index” if the plural and singular form are the same.
- #default_actions ⇒ Object
-
#initialize(entities, options = {}) ⇒ Resource
constructor
A new instance of Resource.
- #member_scope ⇒ Object (also: #shallow_scope)
- #name ⇒ Object
- #nested_param ⇒ Object
- #nested_scope ⇒ Object
- #new_scope(new_path) ⇒ Object
- #plural ⇒ Object
- #resource_scope ⇒ Object
- #shallow=(value) ⇒ Object
- #shallow? ⇒ Boolean
- #singular ⇒ Object (also: #member_name)
Constructor Details
#initialize(entities, options = {}) ⇒ Resource
Returns a new instance of Resource.
1010 1011 1012 1013 1014 1015 1016 1017 1018 |
# File 'actionpack/lib/action_dispatch/routing/mapper.rb', line 1010 def initialize(entities, = {}) @name = entities.to_s @path = ([:path] || @name).to_s @controller = ([:controller] || @name).to_s @as = [:as] @param = ([:param] || :id).to_sym @options = @shallow = false end |
Instance Attribute Details
#controller ⇒ Object (readonly)
Returns the value of attribute controller
1008 1009 1010 |
# File 'actionpack/lib/action_dispatch/routing/mapper.rb', line 1008 def controller @controller end |
#options ⇒ Object (readonly)
Returns the value of attribute options
1008 1009 1010 |
# File 'actionpack/lib/action_dispatch/routing/mapper.rb', line 1008 def @options end |
#param ⇒ Object (readonly)
Returns the value of attribute param
1008 1009 1010 |
# File 'actionpack/lib/action_dispatch/routing/mapper.rb', line 1008 def param @param end |
#path ⇒ Object (readonly) Also known as: collection_scope
Returns the value of attribute path
1008 1009 1010 |
# File 'actionpack/lib/action_dispatch/routing/mapper.rb', line 1008 def path @path end |
Instance Method Details
#actions ⇒ Object
1024 1025 1026 1027 1028 1029 1030 1031 1032 |
# File 'actionpack/lib/action_dispatch/routing/mapper.rb', line 1024 def actions if only = @options[:only] Array(only).map(&:to_sym) elsif except = @options[:except] default_actions - Array(except).map(&:to_sym) else default_actions end end |
#collection_name ⇒ Object
Checks for uncountable plurals, and appends “_index” if the plural and singular form are the same.
1050 1051 1052 |
# File 'actionpack/lib/action_dispatch/routing/mapper.rb', line 1050 def collection_name singular == plural ? "#{plural}_index" : plural end |
#default_actions ⇒ Object
1020 1021 1022 |
# File 'actionpack/lib/action_dispatch/routing/mapper.rb', line 1020 def default_actions [:index, :create, :new, :show, :update, :destroy, :edit] end |
#member_scope ⇒ Object Also known as: shallow_scope
1060 1061 1062 |
# File 'actionpack/lib/action_dispatch/routing/mapper.rb', line 1060 def member_scope "#{path}/:#{param}" end |
#name ⇒ Object
1034 1035 1036 |
# File 'actionpack/lib/action_dispatch/routing/mapper.rb', line 1034 def name @as || @name end |
#nested_param ⇒ Object
1070 1071 1072 |
# File 'actionpack/lib/action_dispatch/routing/mapper.rb', line 1070 def nested_param :"#{singular}_#{param}" end |
#nested_scope ⇒ Object
1074 1075 1076 |
# File 'actionpack/lib/action_dispatch/routing/mapper.rb', line 1074 def nested_scope "#{path}/:#{nested_param}" end |
#new_scope(new_path) ⇒ Object
1066 1067 1068 |
# File 'actionpack/lib/action_dispatch/routing/mapper.rb', line 1066 def new_scope(new_path) "#{path}/#{new_path}" end |
#plural ⇒ Object
1038 1039 1040 |
# File 'actionpack/lib/action_dispatch/routing/mapper.rb', line 1038 def plural @plural ||= name.to_s end |
#resource_scope ⇒ Object
1054 1055 1056 |
# File 'actionpack/lib/action_dispatch/routing/mapper.rb', line 1054 def resource_scope { :controller => controller } end |
#shallow=(value) ⇒ Object
1078 1079 1080 |
# File 'actionpack/lib/action_dispatch/routing/mapper.rb', line 1078 def shallow=(value) @shallow = value end |
#shallow? ⇒ Boolean
1082 1083 1084 |
# File 'actionpack/lib/action_dispatch/routing/mapper.rb', line 1082 def shallow? @shallow end |
#singular ⇒ Object Also known as: member_name
1042 1043 1044 |
# File 'actionpack/lib/action_dispatch/routing/mapper.rb', line 1042 def singular @singular ||= name.to_s.singularize end |