1
0
Fork 0
mirror of https://github.com/rails/rails.git synced 2022-11-09 12:12:34 -05:00

Merge pull request #32305 from q-centrix/perf-improvement-translation-helper

Memoize the result of gsubbing @virtual_path
This commit is contained in:
Andrew White 2018-03-20 15:42:31 +00:00 committed by GitHub
commit 09656debe6
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -122,9 +122,12 @@ module ActionView
private private
def scope_key_by_partial(key) def scope_key_by_partial(key)
if key.to_s.first == "." stringified_key = key.to_s
if stringified_key.first == "."
if @virtual_path if @virtual_path
@virtual_path.gsub(%r{/_?}, ".") + key.to_s @_scope_key_by_partial_cache ||= {}
@_scope_key_by_partial_cache[@virtual_path] ||= @virtual_path.gsub(%r{/_?}, ".")
"#{@_scope_key_by_partial_cache[@virtual_path]}#{stringified_key}"
else else
raise "Cannot use t(#{key.inspect}) shortcut because path is not available" raise "Cannot use t(#{key.inspect}) shortcut because path is not available"
end end