Voici la version corrigée complète de ton épreuve Laravel – TD + QCM (niveau débutant),
structurée et prête à intégrer à ton document corrigé.
✅ EPREUVE LARAVEL - TD + QCM (Débutants) – VERSION CORRIGÉE
📝 PARTIE 1 : CORRIGÉ PROJET CRUD
✔️ Sujet : Application Gestion de Produits
✅ Résultat attendu (Résumé)
1. Modèle Product
php artisan make:model Product -m
Migration :
Schema::create('products', function (Blueprint $table) {
$table->id();
$table->string('name');
$table->decimal('price', 8, 2);
$table->text('description')->nullable();
$table->boolean('status')->default(1); // si bonus demandé
$table->timestamps();
});
2. Migration
php artisan migrate
3. Contrôleur resource
php artisan make:controller ProductController --resource
4. Route resource
Route::resource('products', ProductController::class);
5. Implémentation des méthodes CRUD dans ProductController
● index()
public function index()
{
$products = Product::all();
return view('[Link]', compact('products'));
}
● create()
public function create()
{
return view('[Link]');
}
● store()
public function store(Request $request)
{
$request->validate([
'name' => 'required',
'price' => 'required|numeric',
]);
Product::create($request->all());
return redirect()->route('[Link]')->with('success', 'Produit ajouté avec succès.');
}
● edit()
public function edit(Product $product)
{
return view('[Link]', compact('product'));
}
● update()
public function update(Request $request, Product $product)
{
$request->validate([
'name' => 'required',
'price' => 'required|numeric',
]);
$product->update($request->all());
return redirect()->route('[Link]')->with('success', 'Produit mis à jour avec
succès.');
}
● destroy()
public function destroy(Product $product)
{
$product->delete();
return redirect()->route('[Link]')->with('success', 'Produit supprimé avec succès.');
}
🔖 BONUS (si appliqué)
● Affichage badge :
@if($product->status)
<span class=\"badge bg-success\">Disponible</span>
@else
<span class=\"badge bg-danger\">Indisponible</span>
@endif
✅ PARTIE 2 : CORRIGÉ QCM
✅
1. composer create-project laravel/laravel nomduprojet
Réponse : 3
✅
2. resources/views/
Réponse : 2
✅
3. php artisan make:model Product -m
Réponse : 2
✅
4. Créer les tables dans la base de données
Réponse : 1
✅
5. Product::all();
Réponse : 2
✅
6. {{ $var }}
Réponse : 2
✅
7. return redirect()->route('[Link]');
Réponse : 1
✅
8. Route::resource('products', ProductController::class);
Réponse : 1
✅
9. .env
Réponse : 2
✅
10.php artisan serve
Réponse : 1
✅
11.Sauvegarde un enregistrement en base
Réponse : 1
✅
12.Create, Read, Update, Delete
Réponse : 2
✅
13.php artisan make:controller ProductController
Réponse : 1
✅
14.Affiche la liste des routes
Réponse : 2
✅
15.Crée un fichier de migration
Réponse : 1
✅ FIN DE LA VERSION CORRIGÉE
💡 Prochaines étapes possibles :
● Génération de la mise en page PDF complète corrigée
● Ajout de ton barème de notation détaillé par question et projet
● Préparation d’une grille d’évaluation rapide pour tes corrections
Dis-moi si tu souhaites l’une de ces options aujourd’hui.