Après avoir vu comment créer des routes et des modèles, nous allons voir comment créer les contrôleurs.
Pour rappel, le contrôleur est là pour faire l’interface entre la route, le modèle et la vue, en récupérant et en traitant les données et en les passant à la vue, qui se chargera de les afficher.
Dans un premier temps, nous allons créer la route en la déclarant dans le fichier routes/web.php
// Nous pouvons déclarer la route de la page d'accueil
// Celle-ci appellera la fonction home dans le contrôleur indexController
Route::get('/', 'indexController@home');
// Nous pouvons également utiliser des variables dans les routes (ici l'id d'un article)
// Celle-ci appellera la fonction article dans le contrôleur ArticlesController
Route::get('/articles/{id}', 'ArticlesController@article');
Pour créer un contrôleur, nous allons utiliser artisan. Exécutez la commande suivante dans l’invite de commande.
php artisan make:controller indexController
Ceci a pour effet de créer le fichier indexController.php dans le dossier app/Http/Controllers. Ce fichier contient les lignes suivantes.
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class indexController extends Controller
{
}
Dans ce même fichier, nous allons créer notre fonction de contrôleur, qui gèrera l’affichage de notre page d’accueil
Cette fonction, stipulée dans la liste des routes devra s’appeler home
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
class indexController extends Controller
{
public function home(){
return view('index'); // La fonction home ne fera, dans un premier temps, que retourner la vue de la page d'accueil
}
}
Dans un prochain tutoriel, nous traiterons des contrôleurs avancés.
Obtenir de l'aide
Pour obtenir de l'aide, vous pouvez accéder au serveur Discord pour une entraide par chat