Il s’agit d’un projet de démonstration Laravel destiné aux développeurs juniors pour mettre en pratique leurs compétences. Il s’agit d’une tâche pour le niveau débutant de la feuille de route Laravel, dans le but de mettre en œuvre autant de sujets que possible. Cet article contient à la fois la tâche et sa solution possible, avec le lien du référentiel à la fin.
Tout d’abord, je fournis la description de la tâche, telle qu’elle apparaîtrait sur n’importe quel site d’emploi comme Upwork, du client. J’espère que vous prendrez cette description et essayerez de créer le projet toi-mêmemais plus tard, vous pourrez consulter notre référentiel préparé, avec des commentaires, dans la seconde moitié de cet article.
Vous devez créer un système de type panneau d’administration pour gérer les clients, les projets et les tâches avec les opérations CRUD.
Quelques captures d’écran de l’exemple de solution :
Vous pouvez créer la structure des tables de base de données que vous souhaitez, mais essayez d’utiliser toutes les fonctionnalités de Laravel répertoriées ci-dessous.
Fonctionnalités à implémenter
Voici la liste des fonctionnalités de la feuille de route que vous devez essayer d’implémenter dans votre code :
Routage Avancé
- Liaison de modèle de routage dans les contrôleurs de ressources
- Route Redirect – la page d’accueil doit automatiquement rediriger vers le formulaire de connexion
Base de données avancée
- Seeders et usines de base de données – pour créer automatiquement les premiers clients/projets/tâches et les utilisateurs par défaut
- Eloquent Query Scopes – afficher uniquement les clients actifs, par exemple
- Relations polymorphes avec le package Spatie Media Library
- Accesseurs et mutateurs éloquents – affichez toutes les valeurs de date dans
m/d/Y
format - Suppressions logicielles sur tous les modèles Eloquent
Authentification avancée
- Autorisation : Rôles/Autorisations (administrateurs et utilisateurs simples), Portails, Politiques avec le package Spatie Permissions
- Authentification : vérification par e-mail
Principes de base de l’API
- Routeurs et contrôleurs d’API
- Ressources éloquentes de l’API
- Authentification API avec Sanctum
- Remplacer la gestion des erreurs d’API et les codes d’état
Erreurs de débogage
- Exceptions Try-Catch et Laravel
- Personnalisation des pages d’erreur
Envoi d’e-mail
- Envois postaux et façade de courrier
- Système de notifications : e-mail
Supplémentaire
- Tests automatisés pour les opérations CRUD
Exemple de solution
Si vous avez besoin d’aide, ou si vous voulez comparer votre version avec notre version simple, voici le dépôt public avec un possible solution.
Avis: veuillez consulter ce référentiel uniquement APRÈS avoir accompli la tâche vous-même, ou si vous êtes sûr de vos compétences Laravel Advanced Beginner et que vous pensez que vous n’avez pas besoin de pratiquer cette tâche.