Présentation
Rappels : bibliothèques et frameworks
Architecture HTTP centrée et patron MVC
Composition du framework
Méthodes d’installation et composer
Installer Laravel via laravel/installer
Fondamentaux
Outils en ligne de commande Artisan
Serveur PHP embarqué d’Artisan
Serveur virtuel Laravel Homestead
Gestion des variables d’environnement via DotEnv
Arborescence de répertoire
Contrôleur
Contrôleur et principe de routage
Paramètres de routes, obligatoires, optionnels et sous contraintes
Groupe de routes
Middleware
Définition de contrôleurs
Contrôleur de ressource : mise en place d’un CRUD
Les objets Request et Response
Vues
Le moteur de gabarit Blade
Section de contenu et héritage
Échappement et XSS
Structure de contrôle (conditionnelle et itérative)
Inclusion de gabarit
Gestion des assets, Bootstrap et Vue.js
Compilation des assets via Laravel Mix
Modèle
Paramétrage de la connexion à la base
Présentation de Fluent Query Builder
Select, jointures, unions, clause where
Insert et updates
Déclarer et versionner son schéma via les Migrations
Peupler sa base avec les Seeders
Mettre en place et exploiter son schéma par rapport au métier
Eloquent ORM
Principe d’un ORM, le patron DAO
Définir ses entités
Chargement des instances
Insertion, mise-à-jour et suppression
Outils pratiques : exception NotFound, Soft Delete
Mise en place de Scopes : globaux, locaux et anonyme
Événement de cycle de vie
Formulaires
Gestion native des formulaires avec Laravel
Attacher ses formulaire au modèle
Mise en place de formulaire d’édition du modèle
Sécurité
Principe d’authentification
Gérer ses utilisateurs via Eloquent
Contrôleurs de connexion et de création de compte
Principe de contrôle d’accès
Mise en place de politique de contrôle d’accès
Internationalisation
Principe de fonctionnement
Mise en place de catalogue de traductions
Utilisation des catalogues
Gestion de la locale
Paramètres de substitution
Pluralisation
Tester son application
Principe de tests, tests unitaires et fonctionnels
Tests HTTP
Laravel Dusk, principe et installation
Définir un scénario de navigation
Interagir avec les différents éléments tels que liens, formulaire, clavier, souris
Mise en place d’un catalogue de tests
Performance
Différents types de cache à disposition : base de données et MemCache
Définir des instances de cache
Récupérer et enregistrer des éléments en cache
Envoyer des mails
Pilotes à disposition
Configurer le pilote
Utiliser un template