Helpers
related to template lookup using the lookup context information.
Methods
- any?
- any_templates?
- detail_args_for
- exists?
- find
- find_all
- find_template
- template_exists?
- with_fallbacks
Attributes
[R] | html_fallback_for_js | |
[R] | view_paths |
Instance Public methods
any?(name, prefixes = [], partial = false)
Also aliased as: any_templates?
📝 Source code
# File actionview/lib/action_view/lookup_context.rb, line 140
def any?(name, prefixes = [], partial = false)
@view_paths.exists?(*args_for_any(name, prefixes, partial))
end
🔎 See on GitHub
exists?(name, prefixes = [], partial = false, keys = [], **options)
Also aliased as: template_exists?
📝 Source code
# File actionview/lib/action_view/lookup_context.rb, line 135
def exists?(name, prefixes = [], partial = false, keys = [], **options)
@view_paths.exists?(*args_for_lookup(name, prefixes, partial, keys, options))
end
🔎 See on GitHub
find(name, prefixes = [], partial = false, keys = [], options = {})
Also aliased as: find_template
📝 Source code
# File actionview/lib/action_view/lookup_context.rb, line 126
def find(name, prefixes = [], partial = false, keys = [], options = {})
@view_paths.find(*args_for_lookup(name, prefixes, partial, keys, options))
end
🔎 See on GitHub
find_all(name, prefixes = [], partial = false, keys = [], options = {})
📝 Source code
# File actionview/lib/action_view/lookup_context.rb, line 131
def find_all(name, prefixes = [], partial = false, keys = [], options = {})
@view_paths.find_all(*args_for_lookup(name, prefixes, partial, keys, options))
end
🔎 See on GitHub
with_fallbacks()
Adds fallbacks to the view paths. Useful in cases when you are rendering a :file.
📝 Source code
# File actionview/lib/action_view/lookup_context.rb, line 147
def with_fallbacks
view_paths = build_view_paths((@view_paths.paths + self.class.fallbacks).uniq)
if block_given?
raise ArgumentError, <<~eowarn.squish
Calling `with_fallbacks` with a block is not supported. Call methods on
the lookup context returned by `with_fallbacks` instead.
eowarn
else
ActionView::LookupContext.new(view_paths, @details, @prefixes)
end
end
🔎 See on GitHub
Instance Private methods
detail_args_for(options)
Compute details hash and key according to user options (e.g. passed from render).
📝 Source code
# File actionview/lib/action_view/lookup_context.rb, line 174
def detail_args_for(options) # :doc:
return @details, details_key if options.empty? # most common path.
user_details = @details.merge(options)
if @cache
details_key = DetailsKey.details_cache_key(user_details)
else
details_key = nil
end
[user_details, details_key]
end
🔎 See on GitHub