J'essaie d'internationaliser une application rails pour montrer l'allemand lorsqu'un utilisateur visite la version ".de" de l'application et souhaite la tester en mise en scène avant de la pousser en production. Y at-il un moyen facile de le faire sans avoir besoin d'une deuxième version (ou nième) du serveur de transfert? Je ne veux pas avoir à mettre en place n serveurs de test pour tester chaque langue de l'application.Rails - Tester l'internationalisation en staging
1
A
Répondre
0
Dans votre application où vous vérifiez .de
ou autre, vous pouvez également vérifier les paramètres de chaîne de requête. Je pense que lang
est utilisé assez souvent. Cela vous permettra de le tester sans avoir besoin d'acheter plus de domaines ou de serveurs.
Voici ce que je veux dire:
demande à: https://your-staging-server.com/some-page?lang=de
before_action :set_locale
def set_locale
#domain logic here..
if params[:lang]
I18n.locale = params[:lang]
end
end
option enregistrer la session afin que l'utilisateur n'a pas besoin de spécifier lang
à chaque demande (et donc vous ne doivent modifier l'application pour le faire circuler):
def set_locale
I18n.locale = params[:lang] || session[:locale] || I18n.default_locale
session[:locale] = I18n.locale
end
Je pense que cela est la façon la plus courante de le faire. La plupart des personnes que je connais n'ont pas de domaines différents pour chaque version linguistique de leur application.