Tengo problemas para usar I18n.translate
para traducir una matriz.Rieles: ¿cómo hacer una serie de cadenas?
Específicamente, tengo esta matriz,
module TaskEnums
OCTAVE_BANDS = [:hz63, :hz125, :hz250, :hz500, :hz1000, :hz2000, :hz4000, :hz8000, :hz16000]
end
y tengo la siguiente traducción en un archivo YAML.
en:
TaskEnums:
OCTAVE_BANDS:
hz63: "63 Hz"
hz125: "125 Hz"
hz250: "250 Hz"
hz500: "500 Hz"
hz1000: "1000 Hz"
hz2000: "2000 Hz"
hz4000: "4000 Hz"
hz8000: "8000 Hz"
hz16000: "16000 Hz"
En mi opinión, me gustaría mostrar un menú desplegable que permita a los usuarios seleccionar una frecuencia.
<%= form_for(@task) do |f| %>
<%= f.select :frequency, TaskEnums::OCTAVE_BANDS %>
<% end %>
Sé que puedo traducir símbolos individuales con t :symbol
, pero no parece que esta forma de trabajo con matrices (por ejemplo t TaskEnums::OCTAVE_BANDS
no hace lo que necesito).
¿Alguien sabe cómo puedo traducir la matriz OCTAVE_BANDS
, de modo que las traducciones aparezcan en el menú desplegable? Parece que debe ser un problema común, así que supongo (¡y espero!) Que hay una solución simple ... ¿alguien puede sugerir cómo hacerlo?
Muchas gracias,
D. opción
Genial, gracias! Para el registro, descubrí que necesitaba incluir paréntesis para que esto funcione en la vista, p. 't (TaskEnums :: OCTAVE_BANDS, scope: 'TaskEnums.OCTAVE_BANDS')', pero supongo que eso es obvio para los Rubyistas más experimentados. Muy apreciado. :) –