Salut: Dans mon Rails ApplicationController j'ai ajouté les méthodes suivantes (à partir des guides de rails guides) pour prendre en charge I8n basé sur les informations d'en-tête http accept language. Existe-t-il un moyen de vérifier si les paramètres régionaux demandés sont disponibles et si ce n'est pas le cas, utilisez les paramètres régionaux par défaut 'english' comme indiqué dans environment.rb? Sinon, la traduction est manquante lorsque des paramètres régionaux inconnus sont utilisés.Rails I8n: Utiliser les paramètres régionaux par défaut lorsque les paramètres régionaux demandés (à partir de l'en-tête HTTP) ne sont pas disponibles?
def set_locale
logger.debug "* Accept-Language: #{request.env['HTTP_ACCEPT_LANGUAGE']}"
I18n.locale = extract_locale_from_accept_language_header
logger.debug "* Locale set to '#{I18n.locale}'"
end
private
def extract_locale_from_accept_language_header
request.env['HTTP_ACCEPT_LANGUAGE'].scan(/^[a-z]{2}/).first
end
J'ai trouvé cela juste à la même seconde;) Voir ma réponse ci-dessus. – Sney