Création des vues dans Laravel
Blade
Les fichiers Blade sont stockés dans le répertoire resources/views.
Créer des sous-répertoires pour :
- layouts: Pour stocker vos fichiers de layout principaux.
- components: Pour stocker vos composants réutilisables.
- emails: Pour stocker vos vues d’e-mails.
Structure d’un fichier Blade de base
- HTML: Le code HTML structure votre page.
- Directives Blade: Des instructions spéciales qui commencent par @ pour contrôler le flux de la vue, inclure des fichiers, définir des sections, etc.
- Expressions PHP: Du code PHP simple entre accolades {{ }} pour afficher des variables ou exécuter des expressions.
Directives Blade les plus utilisées
- @extends(‘layout’): Utilise un layout existant comme base pour la vue actuelle.
- @section(‘section’): Définit une section dans une vue qui peut être remplacée dans un layout.
- @yield(‘section’): Affiche le contenu d’une section définie avec @section.
- @include(‘fichier’): Inclut un autre fichier Blade dans le fichier actuel.
- @if, @else, @endif: Des instructions conditionnelles pour afficher du contenu en fonction de certaines conditions.
- @foreach: Boucle sur une collection de données.
- @component(‘composant’): Utilise un composant Blade.
Layouts
Un layout définit la structure générale de la page. Il contient les éléments qui sont communs à toutes les pages de l’ application, comme le header, le footer, la navigation, etc.
Exemple de layout (layouts/app.blade.php):
- <!DOCTYPE html> <html> <head> </head> <body> <header> </header> <main> @yield(‘content’) </main> <footer> </footer> </body> </html>
Une vue qui utilise ce layout:
- @extends(‘layouts.app’) @section(‘content’) <h1>Page d’accueil</h1> @endsection
Composants Blade
Les composants Blade sont des morceaux d’interface utilisateur réutilisables. Ils permettent d’encapsuler de la logique et des éléments HTML.
Exemple de composant (components/alert.blade.php):
- <div class= »alert alert-{{ $type }} »> {{ $message }} </div>