method
resolve_layout
v6.0.0 -
Show latest stable
- Class:
ActionView::TemplateRenderer
resolve_layout(layout, keys, formats)private
No documentation available.
# File actionview/lib/action_view/renderer/template_renderer.rb, line 84
def resolve_layout(layout, keys, formats)
details = @details.dup
details[:formats] = formats
case layout
when String
begin
if layout.start_with?("/")
ActiveSupport::Deprecation.warn "Rendering layouts from an absolute path is deprecated."
@lookup_context.with_fallbacks.find_template(layout, nil, false, [], details)
else
@lookup_context.find_template(layout, nil, false, [], details)
end
rescue ActionView::MissingTemplate
all_details = @details.merge(formats: @lookup_context.default_formats)
raise unless template_exists?(layout, nil, false, [], all_details)
end
when Proc
resolve_layout(layout.call(@lookup_context, formats), keys, formats)
else
layout
end
end