Workshop Laravel donné aux étudiants de 3ème année à la HE-Arc dans le cadre du cours de développement web.
L'objectif de ce workshop est de transmettre aux étudiants les bases et les bonnes pratiques de la création d'un projet web avec le Framework Laravel. Ce workshop a également pour but de fournir un point de départ aux étudiants afin de leur permettre de créer leur projet de semestre.
Les prochaines étapes permettent de mettre en place l'environnement de développement et de suivre le workshop dans son intégralité.
- main : la branche contenant la version du README le plus à jour
- start : la branche contenant le code de départ du workshop Laravel
- end : la branche contenant le code solution du workshop Laravel
- xxxx-main : la branche contenant la version du README le plus à jour, réalisé pour les étudiants de l'année xxxx
- xxxx-start : la branche contenant le code de départ du workshop Laravel, réalisé avec les étudiants de l'année xxxx
- xxxx-end : la branche contenant le code solution du workshop Laravel, réalisé avec les étudiants de l'année xxxx
Commencez par télécharger et installer les éléments suivants en fonction de votre système.
- XAMPP compatible avec PHP >= 8.1.x : https://www.apachefriends.org/download.html
- Composer (recommandé dernière version disponible) : https://getcomposer.org/download/
- VS Code : https://code.visualstudio.com/Download
- Git : https://git-scm.com/
Vous pouvez choisir d'utiliser d'autres outils que ceux indiqués en dessous, mais le support ne vous sera pas garanti si vous rencontrez des problèmes.
Gardez en tête que le workshop a été conçu en utilisant les prérequis recommandés en dessus.
Si vous souhaitez utiliser d'autres outils, voici ce qu'il vous faut au minimum :
- Un serveur web : PHP built-in server, Apache, Nginx, ...
- Un système de base de données : MySQL, PostgreSQL, ...
- PHP version >= 8.1.x
- Composer version compatible avec la version de PHP installée
- Un IDE : VS Code (recommandé), PhpStorm ou autre
- Git : Une version assez récente devrait suffire
- Suivez les prochains chapitres afin de vous assurer de pouvoir suivre le workshop
Si Docker vous intéresse, vous pouvez utiliser Laradock. C'est un très bon outil vous fournissant des conteneurs Docker de base pour travailler avec Laravel et Docker.
Pour information également, Laravel met à disposition un environnement de développement docker qui s'appel Sail (https://laravel.com/docs/10.x/sail#main-content)
En pratique il y a de fortes chances pour que vous soyez amené à utiliser Docker à l'avenir. Mais le workshop se concentre sur Laravel, nous allons donc peu ou pas aborder Docker.
Récupérez le projet en SSH. Sur GitHub appuyez sur le bouton vert Code
en haut à droite et sélectionnez SSH.
Important : Si vous récupérez le projet via SSH, il faudra générer une clé SSH sur votre machine si cela n'est pas déjà fait : Generating a new SSH key
Et configurer la clé publique sur GitHub : About addition of SSH keys to your account
git clone [SSH URL]
Déplacez-vous sur la branche xxxx-start
en remplaçant xxxx
par l'année actuelle.
Si nous sommes en 2023, la bonne branche sera
2023-start
git checkout [nom de la branche]
Faites une copie du fichier .env.example
à la racine du projet et renommez-le .env
.
# Execute in project root
cp .env.example .env
Le contenu de ce fichier n'est pas à modifier, car il est déjà adapté à la configuration du projet. Si vous aviez déjà une base de données installée, il faudra peut être adapté ce fichier quand même. Notamment les paramètres
DB_DATABASE
,DB_USERNAME
,DB_PASSWORD
et/ou d'autres dépendants de votre configuration locale.
Créez une nouvelle base de données manuellement.
- Ouvrez le panneau de contrôle XAMPP et démarrez
MySQL
etApache
en appuyant sur le boutonStart
sur chaque ligne. - Toujours sur le panneau de contrôle XAMPP, appuyez sur le bouton
Admin
sur la ligneMySQL
, cela ouvre PhpMyAdmin sur un navigateur - Cliquez sur "nouvelle base de données"
- Nommez-la
workshop-laravel
, assurez-vous également queutf8mb4_general_ci
soit sélectionné, et appuyez sur "créer".
Durant le workshop nous n'utiliserons pas le serveur fourni par Apache, mais ici il est nécessaire de
le démarrer quand même, car nous avons besoin de PhpMyAdmin qui est démarré avec le même bouton.
En pratique ces 2 éléments ne sont pas liés, il est tout à fait possible d'avoir Apache démarré sans
PhpMyAdmin et inversement. XAMPP a décidé de les lier, mais ce n'est qu'un choix.
Installez les dépendances et mettez le projet Laravel en place.
# Execute in workspace bash
composer install
php artisan key:generate
php artisan migrate
php artisan db:seed
Si la commande
php artisan migrate
échoue avec une erreur similaire à :
SQLSTATE[HY000] [1049] Unknown database 'laravel' (SQL: select * from information_schema.tables where table_schema = laravel and table_name = migrations and table_type = 'BASE TABLE')
Cela veut probablement dire que votre base de données n'a pas été correctement créée.
Démarrez le serveur de développement fourni par PHP.
php artisan serve
Essayez d'accéder à l'URL : http://localhost:8000
Vous devriez avoir une page avec marquée "You are READY for the workshop ;)", sinon regardez dans les logs pour comprendre ce qui n'a pas fonctionné.
Si vous avez le résultat demandé, c'est que vous êtes normalement prêt à suivre le workshop :)
Sinon, c'est terrible ! Commencez par faire 3 tours sur vous-même ou même un peu plus.
Ensuite, assurez-vous de n'avoir oublié aucune des étapes et regardez également avec vos camarades qui pourraient également vous aider.
La préparation du workshop s'arrête ici !
Les points suivants vous seront utiles lorsque vous créerez votre propre projet.
Ils ne sont pas utiles pour la préparation au workshop !
La documentation de Laravel est très complète et permet de démarrer un nouveau projet en un rien de temps.
https://laravel.com/docs/10.x/installation#your-first-laravel-project