Skip to content

Projet permettant de mettre en pratique les fonctionnalités de Laravel 10

Notifications You must be signed in to change notification settings

axelleP/Laravel-10

Repository files navigation

👨‍💻 Laravel 10 👩‍💻

Exemples de code


1) Lancement

Lancer WampServer avec PHP à partir de la version 8.1.

Urls accessibles :

Lancer VITE en mode dev : npm run dev.

2) Configuration

  • /config
  • .env
  • composer install : Composer doit d'abord être installé
  • npm install : Node.js et npm doivent d'abord être installés
  • ajouter des fichiers lang fr :
    • composer require laravel-lang/common --dev
    • php artisan lang:add fr
    • php artisan lang:update
  • authentification :
    • config\auth.php :
          'users' => [
             'driver' => 'eloquent',
             'model' => App\Models\User::class,
          ],

Laravel Breeze

C'est un kit d'authentification : connexion, inscription, réinitialisation du mot de passe, mise à jour profil, ...

  • composer require laravel/breeze --dev
  • php artisan breeze:install : exemples d'options choisis => blade, no, 0

⚠️ Il faut l'installer juste après l'installation de laravel sinon ça écrase certains de nos fichiers comme routes/web.php.

Attention

Si on utilise pas Laravel Sanctum sous Laravel 10, il faut ignorer ses migrations en ajoutant \Laravel\Sanctum\Sanctum::ignoreMigrations(); dans la fonction register() du fichier app\Providers\AppServiceProvider.php.

3) Commandes

  • charger les fichiers définis dans vite.config.js en mode dev : npm run dev
  • cache - exemples :
    • php artisan cache:clear
    • php artisan route:cache et php artisan route:clear
    • php artisan view:cache et php artisan view:clear
  • créer des fichiers lang : php artisan lang:publish
  • CRUD : php artisan make:controller ArticleController --resource
  • créer un controleur : php artisan make:controller ArticleController
  • créer un modèle :
    • php artisan make:model Article
    • avec une migration : php artisan make:model Article --migration
  • créer une commande : php artisan make:command GetJoke
  • créer un middleware : php artisan make:middleware Localization
  • créer un composant : php artisan make:component formNewsletter
  • test unitaire
    • créer un test unitaire : php artisan make:test CalculTest --unit
    • lancer les tests unitaires : php artisan test
  • lancer une commande : php artisan app:get-joke
  • créer un service provider : php artisan make:provider EmailServiceProvider

Migrations

  • créer une migration : php artisan make:migration create_articles_table
  • exécuter les migrations :
    • toutes : php artisan migrate
    • 1 seule : php artisan migrate --path=database\migrations\2024_02_03_153848_create_articles_table.php
  • annuler les migrations :
    • toutes : php artisan migrate:rollback
    • 1 seule : php artisan migrate:rollback --path=database\migrations\2024_02_03_153848_create_articles_table.php

Factory

  • créer une factory : php artisan make:factory ArticleFactory
    • pour un modèle donné : php artisan make:factory ArticleFactory --model=Article
  • utiliser une factory : Article::factory()->count(10)->create();
    • soit dans un seeder : centralise la génération de données tests, permet de le faire par la console
    • soit ou on veut dans le code : plus flexible

Seeder

  • créer un seeder : php artisan make:seeder ArticleSeeder
  • exécuter un seeder : php artisan db:seed --class=ArticleSeeder

Schedule

  • configurer les tâches planifiées dans \routes\console.php
  • déployer les tâches planifiées sur son serveur
  • tester le planificateur manuellement : php artisan schedule:run

4) Extensions

  • Laravel Blade Snippets de Winnie Lin
  • HTML CSS Support de ecmel

5) Définitions

  • migration : permet de sauvegarder et d'exécuter des requêtes SQL afin de maintenir la base de données à jour
  • factory : permet de créer des enregistrements factices dans une table => déclenchement par le code
  • seeder : permet de créer des enregistrements factices dans une table => déclenchement en ligne de commande
  • vite : outil pour compiler et regrouper des fichiers CSS et JavaScript.
    Rque : on compile le code pour que le navigateur puisse l'interpréter

6) Documentation

About

Projet permettant de mettre en pratique les fonctionnalités de Laravel 10

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages