mirror of
https://github.com/Shopify/liquid.git
synced 2026-09-18 02:10:41 -07:00
add name attribute to Template for more flexibility to set context's template name
This commit is contained in:
@@ -16,6 +16,13 @@ module Liquid
|
||||
template = template_factory.for(template_name)
|
||||
|
||||
partial = template.parse(source, parse_context)
|
||||
|
||||
partial.name ||= if context.registers[:file_system]&.respond_to?(:actual_template_name)
|
||||
context.registers[:file_system].actual_template_name(template_name)
|
||||
else
|
||||
template_name
|
||||
end
|
||||
|
||||
cached_partials[template_name] = partial
|
||||
ensure
|
||||
parse_context.partial = false
|
||||
|
||||
@@ -72,11 +72,7 @@ module Liquid
|
||||
old_partial = context.partial
|
||||
|
||||
begin
|
||||
context.template_name = if Template.file_system.respond_to?(:actual_template_name)
|
||||
Template.file_system.actual_template_name(template_name).delete_suffix('.liquid')
|
||||
else
|
||||
template_name
|
||||
end
|
||||
context.template_name = partial.name if partial.name
|
||||
|
||||
context.partial = true
|
||||
context.stack do
|
||||
|
||||
@@ -77,11 +77,7 @@ module Liquid
|
||||
render_partial_func = ->(var, forloop) {
|
||||
inner_context = context.new_isolated_subcontext
|
||||
|
||||
inner_context.template_name = if Template.file_system.respond_to?(:actual_template_name)
|
||||
Template.file_system.actual_template_name(template_name).delete_suffix('.liquid')
|
||||
else
|
||||
template_name
|
||||
end
|
||||
inner_context.template_name = partial.name if partial.name
|
||||
|
||||
inner_context.partial = true
|
||||
inner_context['forloop'] = forloop if forloop
|
||||
|
||||
@@ -15,7 +15,7 @@ module Liquid
|
||||
# template.render('user_name' => 'bob')
|
||||
#
|
||||
class Template
|
||||
attr_accessor :root
|
||||
attr_accessor :root, :name
|
||||
attr_reader :resource_limits, :warnings
|
||||
|
||||
class TagRegistry
|
||||
|
||||
Reference in New Issue
Block a user