Logo
sistrall.it

Pubblicato il 18 dicembre 2006

Globalize e simboli per i formati data

Globalize è un plugin che facilità l’internazionalizzazione di applicazioni scritte in Rails.

The Ruby Mine ha pubblicato poco tempo fa un’introduzione al suo utilizzo.

Globalize mette a disposizione il metodo localize che si occupa di formattare correttamente data e ora, in sintonia con le impostazioni di localizzazione scelte per l’applicazione. localize, purtroppo, è pensato per prendere come parametro una stringa di formattazione di data e ora; molto più comodo sarebbe poter usare i simboli_, come si può fare con @tos@ in Rails. Meglio date.localize(:long) di date.localize('%d %B %Y %H:%M'), no?

Il frammento di codice che segue, aggiunto a environment.rb, permette di ottenere il risultato desiderato (prevede l’uso di alias_method_chain).

module Globalize
  module CoreExtensions
    module Time
      def localize_with_symbol_support(format)
        localize_without_symbol_support(::Time::DATE_FORMATS[format] ? ::Time::DATE_FORMATS[format] : format)
      end

alias_method_chain :localize, :symbol_support end module Date def localize_with_symbol_support(format) localize_without_symbol_support(::Date::DATE_FORMATS[format] ? ::Date::DATE_FORMATS[format] : format) end alias_method_chain :localize, :symbol_support end end

end

Prima Le password sul web con PassPack 15 dicembre 2006

Dopo Viaggio in ActiveSupport 19 dicembre 2006

Cosa ne pensi?