Table de matières
Installation Laravel
- Installation des outils pour Laravel
- Créer un projet Laravel
- Structure du projet
- Configuration Laravel
Les bases Laravel
Structure du projet
Dernière mise à jour : 16/06/2022
Dans ce chapitre, nous allons passé en revu les dossiers que nous allons utilisé dans ces tutoriels.
Répertoires racines
app
Le répertoire app
contient le code principal de votre application. Nous explorerons ce répertoire plus en détail bientôt ; cependant, presque toutes les classes de votre application se trouveront dans ce répertoire.
config
Le répertoire config
, comme son nom l'indique, contient tous les fichiers de configuration de votre application. C'est une bonne idée de lire tous ces fichiers et de vous familiariser avec toutes les options qui s'offrent à vous.
database
Le répertoire database
contient vos migrations de base de données, les données factices de vos modèles. Si vous le souhaitez, vous pouvez également utiliser ce répertoire pour contenir une base de données SQLite. Il est donc le répertoire qui gère la structure de votre base de données.
lang
Le répertoire lang contient tous les fichiers de langue de votre application. Vous permettant de gérer plusieurs langues dans votre site web.
Remarque : Ce répertoire est devenu racine que à partir de la version 9 de Laravel, pour toutes les versions ultérieures, le répertoire lang se trouve dans le dossier public.
public
Le répertoire public
contient le fichier index.php
, qui est le point d'entrée pour toutes les demandes entrant dans votre application et configure le chargement automatique. Ce répertoire héberge également vos fichiers statiques tels que les images, JavaScript et CSS.
resources
Le répertoire resources
contient vos vues ainsi que vos fichiers bruts non compilés tels que CSS, SASS ou JavaScript.
routes
Le répertoire routes
contient toutes les définitions des URLs pour votre application. Par défaut, 4 fichiers de route sont inclus avec Laravel : web.php, api.php, console.php et channels.php. Dans ce tutoriels, vous avez besoin seulement de web.php
.
Le fichier web.php
contient des routes placés dans le RouteServiceProvider (web groupe middleware), qui fournit l'état de la session, la protection CSRF et le cryptage des cookies. Si votre application n'offre pas d'API RESTful sans état, il est probable que toutes vos routes seront très probablement définies dans le fichier web.php
.
storage
Le répertoire storage
contient vos logs, modèles de vues(blades) compilés, sessions basées sur des fichiers, fichiers caches et autres fichiers générés par le framework. Ce répertoire est divisé en répertoires app
, framework
et logs
. Le répertoire app peut être utilisé pour stocker tous les fichiers générés par votre application. Le répertoire framework est utilisé pour stocker les fichiers et les caches générés par le framework. Enfin, le répertoire logs contient les fichiers journaux de votre application.
Le répertoire storage/app/public
peut être utilisé pour stocker des fichiers générés par l'utilisateur, tels que des avatars de profil, les images des vos publications, qui doivent être accessibles au public. Vous devez créer un lien symbolique(raccourcis) public/storage
pointant vers ce répertoire. Vous pouvez créer le lien à l'aide de la commande Artisan : php artisan storage:link
.
tests
Le répertoire tests
contient vos tests automatisés. Des exemples de tests unitaires PHPUnit et de tests de fonctionnalités sont fournis prêts à l'emploi. Chaque classe de test doit être suffixée par le mot Test. Vous pouvez exécuter vos tests à l'aide des commandes php unit
ou php vendor/bin/phpunit
. Ou, si vous souhaitez une représentation plus détaillée et plus belle de vos résultats de test, vous pouvez exécuter vos tests à l'aide de la commande Artisan php artisan test
.
Répertoires de app
Remarque : De nombreuses classes du répertoire
app
peuvent être générées via des commandes Artisan. Pour passer en revue les commandes disponibles, exécutez la commandephp artisan list make
dans votre terminal.
http
Le répertoire Http
contient vos contrôleurs, middleware et requests. La quasi-totalité de la logique de gestion des requêtes entrant dans votre application sera placée dans ce répertoire. Les contrôleurs (app/http/controllers
) sont les intermédiaires entre nos vues et les modèles.
Models
Le répertoire Models
contient toutes vos classes de modèle Eloquent. L'ORM Eloquent inclus avec Laravel fournit une belle et simple implémentation ActiveRecord pour travailler avec votre base de données. Chaque table de base de données a un "modèle" correspondant qui est utilisé pour interagir avec cette table. Les modèles vous permettent d'interroger des données dans vos tables, ainsi que d'insérer de nouveaux enregistrements dans la table.
Passer en revue tous les répertoires que nous n'avons pas mentionnés ici dans la documentation officielle de Laravel.
Soyez au courant des dernières tendances
Abonnez-vous pour obtenir les meilleurs articles, tutoriels, astuces et informations !