Problème de modification des paramètres régionaux sur un site Web Symfony 2.1.Modification des paramètres régionaux avec symfony 2.1
Je ne trouve pas un moyen de pouvoir changer la langue sans utiliser le _locale
sur toutes les routes. Je sais que c'est contre the fundamental rule, mais ce contenu ne sera par exemple pas indexé par moteur car il est membre seulement.
En règle générale, je voudrais une méthode simple pour pouvoir changer les paramètres régionaux sur la demande (BC à partir de la version 2.1), ou sur la session, mais ne peut pas comprendre comment le faire en douceur. Je voudrais également éviter l'utilisation d'un auditeur pour cela.
fichier config.yml:
framework:
translator: { fallback: %locale% }
session:
fichier routing.yml:
route_change_lang:
pattern: /changelang/{newlang}
defaults: { _controller: AcmeCoreBundle:Default:switchLanguage, newlang: en }
requirements:
newlang: en|fr|de
Une action simple pour mettre à jour les paramètres régionaux du routeur:
public function switchLanguageAction($newlang)
{
$request = $this->getRequest();
$request->setLocale($newlang);
$referer_url = $this->get('request')->headers->get('referer');
if ($referer_url != null) {
return $this->redirect($referer_url);
} else {
return $this->redirect($this->generateUrl('route_home'));
}
}
Quel est le problème? Je suppose que cela est lié à l'ensemble default_locale dans le fichier config.yml principal, mais la documentation n'est pas vraiment claire, aucune aide/indice apprécié
Je suis exactement le même problème. Avez-vous trouvé une solution s'il vous plaît? – EnchanterIO