Helpers related to template lookup using the lookup context information.

Methods

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

any_templates?(name, prefixes = [], partial = false)

Alias for: any?

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

find_template(name, prefixes = [], partial = false, keys = [], options = {})

Alias for: find

template_exists?(name, prefixes = [], partial = false, keys = [], **options)

Alias for: exists?

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