Laravel 5.4 richtige Art und Weise zu speichern Locale setLocale()
Ich wissen muss. Was ist die richtige Art und Weise zu speichern Gebietsschema für Benutzer. Wenn für jeden Benutzer Anfrage kann ich die Sprache ändern, indem Sie
App::setLocale($newLocale);
Würde es nicht ändern Sie die Sprache für mein ganzes Projekt und für andere Anfragen, wie auch? Ich meine, wenn ein Nutzer wechselt die Sprache wird als Standard verwendet werden für andere Benutzer.
Vielen Dank im Voraus
InformationsquelleAutor Sagynbek Kenzhebaev | 2017-08-01
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn jemand lädt Ihre website, es nutzt die Standard -, die eingestellt ist in der config-Datei.
Mithilfe der
App::setLocale()
Methode ändern nur für bestimmte user, welche ich übernehmen würde, die in der Sitzung, die config-Datei würde der Wert nicht verändert werden.Konnte Sie in Aktion sehen Sie selbst, durch das öffnen Ihrer website in zwei verschiedenen Browsern (wie Sie sein würde, mit zwei unterschiedlichen sessions), dann ändern Sie das Gebietsschema in ein und sehen das Standard-laden in den anderen.
https://laravel.com/docs/5.4/localization#introduction
Ja, ich denke auch so, am besten überprüfen Sie die Dokumentation laravel.com/docs/5.6/localization#introduction
InformationsquelleAutor haakym
Wenn Sie
App::setLocale()
zum Beispiel in IhremAppServiceProvider.php
zu, wäre es für alle Benutzer.Konnten Sie erstellen eine middleware für diese. So etwas wie:
(Sie müssen erstellen Sie eine
getLocale()
Methode auf dem User-model für diesen zu arbeiten.)Und dann in Ihre
Kernel.php
erstellen eine middleware-Gruppe fürauth
:Und entfernen Sie die
auth
von der$routeMiddleware
array (in deinemKernel.php
).Nun auf jeder route, die verwendet die
auth
middleware, legen Sie das Gebietsschema Ihres Laravel Anwendung für jeden Benutzer.InformationsquelleAutor Dees Oomens
Löste ich dieses problem mit einem controller, middleware -, und mit session.
Dieser arbeitete für mich gut, hoffe es hilft dir.
Verarbeiten die Benutzer-Anforderung über den controller:
Einfach die Sprache um die Benutzer-session.
Route zu wechseln Gebietsschema:
Middleware zu handhaben, die notwendigen Einstellungen:
In der Middleware überprüfen der Sitzung des Benutzers für die Spracheinstellung, wenn seine pereset gesetzt.
Schließlich die Schalt-form:
InformationsquelleAutor Lyimmi