Mustern translation

By 2020-08-11No Comments

Eine benutzerdefinierte URL-Regelklasse für Yii 2, die übersetzte URL-Regeln ermöglicht. Mit den folgenden beiden Codeausschnitten können Sie eine einfache Dropdown-Liste erstellen, in der Benutzer alternative Sprachen für die aktuelle Route auswählen können: Wenn nichts passiert, laden Sie GitHub Desktop herunter, und versuchen Sie es erneut. Die aktuelle Sprache wird durch den Sprachparameter Yii::$app->bestimmt. Der Wert dieses Parameters wird zum Erstellen und Analysieren von URLs verwendet. . . . Aktualisieren Sie Ihre URL-Regeln, um diese Klasse zu verwenden, und legen Sie die Muster pro Sprache fest. . . Der Routenparameter bleibt für alle Regeln unverändert.

Muster ist ein Array aller Muster, der Schlüssel muss dem Yii-Sprachbezeichner entsprechen. Wenn es kein Muster für eine Sprache gibt, wird das erste konfigurierte Muster verwendet. . Diese Erweiterung setzt den aktuellen Sprachparameter nicht. Verwenden Sie dafür codemix/yii2-localeurls. Aufgrund der Funktionsweise dieser Bibliothek müssen Sie beim Erstellen von URLs für Routen in einer anderen Sprache zwei Sprachparameter angeben. . Sie können die Klassenkonfiguration in Ihren URL-Regeln weglassen, wenn Sie eine ruleConfig in UrlManager konfigurieren: Die bevorzugte Art, diese Erweiterung zu installieren, ist über composer. Mit dieser Erweiterung können Sie URL-Regeln pro Sprache schreiben. Sie können sich z.B. für en, aanmelden für nl und für de anmelden.

Da diese Erweiterung normale Yii2 UrlRule-Objekte verwendet, um sprachspezifische URL-Regeln zu erstellen, haben Sie immer noch alle Macht, die mit normalen Yii-URL-Regeln, einschließlich URL-Parametern und regulären Ausdrücken, einhergeht. . Sie können dieses Beispiel erkennen, da es weitgehend auf dem Beispiel für yii2-localeurls basiert. Setzen Sie forceRuleSearch auf true, um die Suche in allen Regelmustern zu erzwingen. . ..