07 Navigation
Aufgabenstellung
Erstelle eine Startseite für deine Übungen für alle deine Routes-Einträge eine gemeinsame Navigation.
Lösungsschritte
Schritt 1
Füge einen neuen Routes-Eintrag mit Pfad "/" ein:
$routes = [
'/' => 'NavigationController@home', /* NEU */
'/aufgabe/spam' => 'AufgabenController@spam',
// ... alle weiteren bestehenden Routes ...
];Erstelle einen Controller NavigationController und eine Methode home() und eine View home.view.php dazu. Erstelle erst mal manuell ein Array $navigation mit allen bisherigen Links, die du als Menü haben willst:
class NavigationController {
public function home() {
$navigation = [
'/' => 'Navigation - Home',
'/aufgabe/spam' => 'Aufgaben - Spam',
// ... weitere Menüpunkte
];
}
}Gib alle Links als Liste in home.view.php aus:
Schritt 2
Fülle nun das Array $navigation dynamisch aus der Routes-Tabelle. Für lesbare Beschriftungen kannst du z.B. die Stringfunktionen explode(), str_replace() und ucfirst() benutzen.
Testing
Prüfe nun in der View, ob die Links vernünftige Beschriftungen haben und die Links korrekt funktionieren.
Füge einen neuen Routes-Eintrag hinzu und schau, ob das neue Menü korrekt erscheint und funktioniert.
Last updated
Was this helpful?