Mehrere Ebenen im mvc -benutzerdefinierten Routing
Problem:
im Kontext des Erstellens a Das benutzerdefinierte Content -Management -System (CMS) entspricht der Bedarf für dynamische URL -Pfadstrukturen, die es einem Administrator ermöglichen, benutzerdefinierte Pfadebenen wie "NewsLocalMynewdog" oder "ArticleseventsConventionsMyCon" zu definieren.
benutzerdefinierte RouteBase -Unterklasse:
Um dieses benutzerdefinierte Routing -Szenario zu erreichen, ist das Erstellen einer benutzerdefinierten RouteBase -Unterklasse, wie z. B. CustomPageroute, erstellen. Diese Klasse definiert die Logik, um festzustellen, ob eine Anforderung mit einer bestimmten Route übereinstimmt, und generiert den entsprechenden URL -Pfad. Übereinstimmung eingehende Anfragen zu Pfaden im CMS-Stil. Es extrahiert den virtuellen Pfad aus der Anforderungs -URL und versucht, ihn mit einer Liste bekannter Pfade zu entsprechen, die im Cache gespeichert sind. URL -Pfade für bestimmte Regleraktionen und Routenwerte. Es verwendet die gleiche passende Logik wie in getRoutedata und gibt den virtuellen Pfad zurück, der den Anforderungsparametern übereinstimmt. mit der Methode der Routen.ADD bei dem MVC -Routing -System registriert werden. Die MapRoute -Methode wird verwendet, um eine Standardroute zu registrieren, um alle anderen Anforderungen zu verarbeiten, die nicht mit der benutzerdefinierten Route übereinstimmen. benannte CustomPage mit einer Aktionsmethode mit dem Namen Details, um die übereinstimmenden Anforderungen zu verarbeiten. Die Detail -Methode kann die Seitendaten abrufen, die den Routenparametern entsprechen und den entsprechenden Inhalt anzeigen.
Das obige ist der detaillierte Inhalt vonWie kann benutzerdefinierte Routing in MVC dynamische URL-Pfade mit mehreren Ebenen umgehen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!