method
name_for_action
v6.1.7.7 -
Show latest stable
- Class:
ActionDispatch::Routing::Mapper::Mapping::Scoping::Resources
name_for_action(as, action)private
No documentation available.
# File actionpack/lib/action_dispatch/routing/mapper.rb, line 1842
def name_for_action(as, action)
prefix = prefix_name_for_action(as, action)
name_prefix = @scope[:as]
if parent_resource
return nil unless as || action
collection_name = parent_resource.collection_name
member_name = parent_resource.member_name
end
action_name = @scope.action_name(name_prefix, prefix, collection_name, member_name)
candidate = action_name.select(&:present?).join("_")
unless candidate.empty?
# If a name was not explicitly given, we check if it is valid
# and return nil in case it isn't. Otherwise, we pass the invalid name
# forward so the underlying router engine treats it and raises an exception.
if as.nil?
candidate unless !candidate.match?(/\A[_a-z]/) || has_named_route?(candidate)
else
candidate
end
end
end