Stò cercando di tradurre in italiano i messaggi d’errore di Activerecord
e,
allo scopo mi sono appoggiato ad un plugin per rails denominato ri18n
(esiste anche come gem).
module ActionView
module Helpers
module ActiveRecordHelper
def error_messages_for(object_name, options = {})
options = options.symbolize_keys
object = instance_variable_get("@#{object_name}")
unless object.errors.empty?
content_tag(“div”,
content_tag(
options[:header_tag] || “h2”,
“#{pluralizza(object.errors.count, “error”)} non
#{pluralizza(object.errors.count, “ha”)} permesso la registrazione dei
dati”
) +
content_tag(“p”, “Ci sono stati problemi nella compilazione
dei seguenti campi:”) +
content_tag(“ul”, object.errors.full_messages.collect {
|msg| content_tag(“li”, msg) }),
“id” => options[:id] || “errorExplanation”, “class” =>
options[:class] || “errorExplanation”
)
end
end
end
end
end
def pluralizza count, word
case word
when ‘error’
if count > 1
count.to_s + " errori"
else
count.to_s + " errore"
end
when ‘ha’
if count > 1
“hanno”
else
“ha”
end
end
end
Ho provato ad usare questo plugin, ma non so perchè mi dice sempre “500
Internal Server Error”…ho copiato la cartella nel file .zip dentro la
cartella vendor del mio progetto.
Inizialmente, quando facevo partire WEBrick mi diceva sempre che
L10N_LANG non era inizializzato, allora ho commentato la linea L10N_LANG
||= :it e ho scritto direttamente require ‘lang_it’. Così WEBrick parte
ma mi da sempre l’errore di cui sopra…