2016-05-09 8 views
0

Ich möchte das Gebietsschema für alle Seiten auf Symfony ändern.Symfony 3: Ändern Sie das Gebietsschema für alle Seiten

Ich habe versucht, dieses: $req->setLocale('fr');

Aber wenn ich das Gebietsschema auf eine andere Seite gehen wieder als Standard festgelegt.

Ich weiß, dass es möglich ist, es mit dem Link zu tun „domaine/fr/bekommen“, aber ich will nicht für jede Sprache verschiedene Links haben ...:/

Ich frage mich auch, wenn Je nach Land der IP-Adresse kann das Standardgebietsschema festgelegt werden.

Antwort

1

Sie es durch Einstellen der Default Locale.

# app/config/config.yml 
framework: 
    default_locale: fr 

Um einige erweiterte Kontrolle darüber, wie machen die Locale Sticky während der Sitzung eines Benutzers oder sogar setzen Sie die Locale auf IP-Basis tun können, können Sie eine LocaleListener erstellen, Das ist in diesem cookbook entry.

+0

abgedeckt Ja, aber ich möchte nicht das Standardgebietsschema ändern. Ich möchte dem Benutzer die Möglichkeit geben, die Sprache manuell zu ändern. Die Webseite wird immer in Englisch sein, aber wenn ein Franzose kommt, kann er auf die französische Flagge klicken und die ganze Webseite wird während seiner Sitzung in Französisch gesetzt. – Fab

+0

Ein LocaleListener, aber es hat nichts geändert:/ – Fab

+0

In Ordnung ein erreicht, es mit dem fr in der Verbindung zu tun. Es wird für den Moment okay sein. Aber in der app/routing.yml, wenn ich Anforderungen für die _locale stelle, gibt es mir einen Fehler zurück:/ – Fab