Class: ActionDispatch::Routing::Mapper::Resources::Resource
- Inherits:
-
Object
- Object
- ActionDispatch::Routing::Mapper::Resources::Resource
- Defined in:
- lib/action_dispatch/routing/mapper.rb
Overview
:nodoc:
Direct Known Subclasses
Constant Summary collapse
- DEFAULT_ACTIONS =
[:index, :create, :new, :show, :update, :destroy, :edit]
Instance Attribute Summary collapse
-
#controller ⇒ Object
readonly
Returns the value of attribute controller.
-
#options ⇒ Object
readonly
Returns the value of attribute options.
-
#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 they’re.
- #default_actions ⇒ Object
-
#initialize(entities, options = {}) ⇒ Resource
constructor
A new instance of Resource.
- #member_scope ⇒ Object
- #name ⇒ Object
- #nested_scope ⇒ Object
- #new_scope(new_path) ⇒ Object
- #plural ⇒ Object
- #resource_scope ⇒ Object
- #singular ⇒ Object (also: #member_name)
Constructor Details
#initialize(entities, options = {}) ⇒ Resource
Returns a new instance of Resource.
793 794 795 796 797 798 799 |
# File 'lib/action_dispatch/routing/mapper.rb', line 793 def initialize(entities, = {}) @name = entities.to_s @path = (.delete(:path) || @name).to_s @controller = (.delete(:controller) || @name).to_s @as = .delete(:as) @options = end |
Instance Attribute Details
#controller ⇒ Object (readonly)
Returns the value of attribute controller.
791 792 793 |
# File 'lib/action_dispatch/routing/mapper.rb', line 791 def controller @controller end |
#options ⇒ Object (readonly)
Returns the value of attribute options.
791 792 793 |
# File 'lib/action_dispatch/routing/mapper.rb', line 791 def @options end |
#path ⇒ Object (readonly) Also known as: collection_scope
Returns the value of attribute path.
791 792 793 |
# File 'lib/action_dispatch/routing/mapper.rb', line 791 def path @path end |
Instance Method Details
#actions ⇒ Object
805 806 807 808 809 810 811 812 813 |
# File 'lib/action_dispatch/routing/mapper.rb', line 805 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 they’re.
830 831 832 |
# File 'lib/action_dispatch/routing/mapper.rb', line 830 def collection_name singular == plural ? "#{plural}_index" : plural end |
#default_actions ⇒ Object
801 802 803 |
# File 'lib/action_dispatch/routing/mapper.rb', line 801 def default_actions self.class::DEFAULT_ACTIONS end |
#member_scope ⇒ Object
840 841 842 |
# File 'lib/action_dispatch/routing/mapper.rb', line 840 def member_scope "#{path}/:id" end |
#name ⇒ Object
815 816 817 |
# File 'lib/action_dispatch/routing/mapper.rb', line 815 def name @as || @name end |
#nested_scope ⇒ Object
848 849 850 |
# File 'lib/action_dispatch/routing/mapper.rb', line 848 def nested_scope "#{path}/:#{singular}_id" end |
#new_scope(new_path) ⇒ Object
844 845 846 |
# File 'lib/action_dispatch/routing/mapper.rb', line 844 def new_scope(new_path) "#{path}/#{new_path}" end |
#plural ⇒ Object
819 820 821 |
# File 'lib/action_dispatch/routing/mapper.rb', line 819 def plural @plural ||= name.to_s end |
#resource_scope ⇒ Object
834 835 836 |
# File 'lib/action_dispatch/routing/mapper.rb', line 834 def resource_scope { :controller => controller } end |
#singular ⇒ Object Also known as: member_name
823 824 825 |
# File 'lib/action_dispatch/routing/mapper.rb', line 823 def singular @singular ||= name.to_s.singularize end |