X

Projet de démonstration : Laravel Simple CRM


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.