rubyonrails

Internacionalização em labels

Desenvolvendo uma aplicação onde apliquei os recurso de internacionalização do Rails, percebi que o framework não traduz os valores dos labels ↗︎ para a tradução do atributo.

Para corrigir isso, existem duas formas: um plugin chamado i18n_label ou uma gambiarra um recurso técnico avançado adaptado a condições tecnológicas precárias em um determinado momento:

module ActionView
  module Helpers
    class InstanceTag
      def to_label_tag_with_i18n(text = nil, options = {})
        text ||= object.class.human_attribute_name(method_name) if object.class.respond_to?(:human_attribute_name)
 
        to_label_tag_without_i18n(text, options)
      end
 
      alias_method_chain :to_label_tag, :i18n
    end
  end
end

Cole o código acima em um arquivo da pasta lib, por exemplo e o inclua com require no environment.rb.

Interactions

Webmentions

Like this content? Buy me a coffeeor share around:

0 Like

0 Reply & Share