Laravel
Models Migration Relation
Introduction Installation Projet:Structure Strucutre,model,migration Migration,Models,Relation Artisan CLI Migrations:Exemples Models:Exemples Relations:Exemples 1 Relations:Exemples 2
Les Relations
BelongsTo HasOne HasMany BelongsToMany HasManyThrough
Exemples des Relations
Relations:oneToMany,ManyToMany... Relations:Exemples
Exercices
Exercice 1 Exercice 2
Controllers Views Routes
Routes,Controller,Model,view
Les Routes
Définir:Routes Routes avec Paramètres Routes nommées Groupes de routes
Les Controllers
Les Controllers Les Contrôleurs de Ressources
Les Vues
Vues et Blade Templates Blade Layouts et Sections Sous-vues Composants et Slots Contrôles de flux
MVC :CRUD
CRUD: Produit CRUD: Etudiant CRUD: Car CRUD,Recherche: Book
Validation
Exemple :Projets
ORM:Eloquent
Exemple :Transport
Api:Laravel +React
Middleware

Seeders & Factories
Exemples :EFM

Authenfication
TP:Schools Management
Authenfication:React
Layouts
Exercices





Laravel:Eloquent ORM

Eloquent est l'ORM (Object-Relational Mapping) intégré dans le framework Laravel. Il simplifie l'accès et la manipulation des bases de données en permettant aux développeurs d'interagir avec la base de données à travers des objets PHP plutôt qu'à travers des requêtes SQL directes. Voici une liste des principales fonctionnalités d'Eloquent dans Laravel :
  1. Modèles :

    • Définir des modèles pour représenter les tables de la base de données.
    • Les modèles étendent la classe Illuminate\Database\Eloquent\Model.
  2. Configuration des modèles :

    • Configurer les relations entre les modèles.
    • Spécifier les clés primaires et étrangères.
  3. Opérations CRUD :

    • Création : create pour insérer un nouveau modèle dans la base de données.
    • Lecture : all, find, first, get pour récupérer des données.
    • Mise à jour : update pour modifier les données existantes.
    • Suppression : delete pour supprimer des données.
  4. Query Builder :

    • Utiliser une syntaxe expressive pour créer des requêtes SQL.
    • Méthodes telles que where, orWhere, whereIn, orderBy, etc.
  5. Relations :

    • Définir des relations entre les modèles, telles que hasOne, hasMany, belongsTo, belongsToMany.
    • Charger et manipuler des relations avec facilité.
  6. Collections :

    • Utiliser des collections pour travailler avec des ensembles de résultats de requêtes.
    • Des méthodes utiles telles que filter, map, pluck, etc.
  7. Mutateurs et Accesseurs :

    • Définir des mutateurs pour modifier des valeurs avant l'insertion dans la base de données.
    • Définir des accesseurs pour manipuler des valeurs lorsqu'elles sont récupérées.
  8. Événements de modèle :

    • Utiliser des événements de modèle pour déclencher des actions lors de la création, de la mise à jour ou de la suppression d'un modèle.
  9. Scopes :

    • Définir des scopes pour encapsuler des clauses where réutilisables.
  10. Mass Assignment (Affectation massive) :

    • Utiliser la propriété $fillable pour spécifier les colonnes qui peuvent être massivement affectées.
    • Utiliser la propriété $guarded pour spécifier les colonnes qui ne peuvent pas être massivement affectées.
  11. Pagination :

    • Paginer les résultats avec paginate.
  12. Tinker :

    • Utiliser l'outil Artisan Tinker pour interagir avec Eloquent en ligne de commande.
  13. Base de données JSON :

    • Stocker et interroger des données JSON directement dans la base de données.
  14. Soft Deletes :

    • Utiliser la fonctionnalité de suppression douce pour marquer les enregistrements comme supprimés sans les supprimer physiquement de la base de données.
  15. Migration automatique :

    • Utiliser les migrations pour définir la structure de la base de données et mettre à jour le schéma de manière versionnée.
  16. Éléments cachés (Hidden) :

    • Définir des attributs cachés qui ne sont pas inclus dans les résultats de requête JSON.
  17. Éléments visibles (Visible) :

    • Définir des attributs visibles qui sont inclus dans les résultats de requête JSON.