Vous êtes sur la page 1sur 18

FRAMEWORK LARAVEL

V 6.0
2019
Bibliothèque et framework

Objectifs :

Créer la squelette de l’application : toute la partie technique (architecture, structure et


bibliothèque) est gérée en toute transparence.

Faciliter le travail du développeur : lui permettre de ne se concentrer que sur


l'essentiel, c'est-à-dire le développement des composants métiers.
Bibliothèque et framework

Principe:

Modèle de conception réutilisable

Il propose un ensemble d'outils et de composants logiciels cohérents tels qu'une


bibliothèque logicielle réutilisable.

Sa structure technique et logique impose au développeur le respect de certaines


pratiques et normes de développement.
MVC
Installation Laravel

Principe:

1. Installer le package WAMP (version minimum PHP 7.2)

2. Installer le composer

3. Lancer le téléchargement du framework via la commande :

composer create-project --prefer-dist laravel/laravel biliotheque


Structure Laravel
Utilisation Laravel

routes >> web.php:

Afficher un message de bienvenue

Route::get('/', function (){
    return "Bienvenue ";
});
Utilisation Laravel
Création d’un controleur :
app >> Http >> Controllers

php artisan make:controller VilleController


class VilleController extends Controller
{
    public function index()
    {
        return " Appel du contrôleur des villes";
    }
}

Afficher un message de bienvenue

Route::get('/', ‘VilleController@index');
Utilisation Laravel

Création d’un vue:


Ressources >> views >> ville.php

VilleController : :
     public function index()
    {
        return view(‘ville');
    }
Utilisation Laravel

VilleController : :
    public function index()
    {
        $data = ["casa", "rabat", 'fes'];
        return view(‘ville', compact('data'));
    }

Moteur de template blade


Ressources >> views >> ville.blade.php
Utilisation Laravel

View :

 <h1>Liste des villes</h1>
<ol>
    @foreach ($data as $item)
       <li> {{ $item}}
    @endforeach
</ol>
Utilisation Laravel

segments:
Route::get('/{code}', 'VilleController@filtrer');

 
public function filtrer($code)
    {
        return "Vous avez choisi : $code";
    }
Utilisation Laravel

segments:
Route::get('/{code}', 'VilleController@filtrer');

 
public function filtrer($code)
    {
        return "Vous avez choisi : $code";
    }
Utilisation Laravel

segments:
Route::get('/{code}', 'VilleController@filtrer');

 
public function filtrer($code)
    {
        return "Vous avez choisi : $code";
    }
Utilisation Laravel
Création de la route : « route/web.php » :
Route::get('livre', 'LivreController@index');
Création du controleur : php artisan make:controller LivreController –r
Création de la vue : Créer du fichier index.blade.php dans le dossier
ressources/views/livre
Création de model avec la migration : Php artisan make:model Livre –m
Configuration de la migration : Ajouter $table->string('titre'); dans la
migration Route::get('livre', 'LivreController@index');
Appliquer la migration : php artisan migrate
Création de la factory : php artisan make:factory LivreFactory -m Livre
Configuration de la factory : 'titre' => $faker->realText(30),
Creation des objects livres via tinker : php artisan tinker
factory('App\Livre',5)->create()
Configurer le controlleur : $livres = Livre::all();
         return view('livre.index', compact('livres'));
Utilisation Laravel
Création de la vue : ressaourses/views/livre/create.blade.php
<form action="{{url('livre')}}" method="post">
    @csrf
    <label for="">Titre</label>
    <input type="text" name="titre">
    <input type="submit« >
</form>
Création de la route : Route::post('livre', 'LivreController@store');

Paramétrage du model : protected $fillable = ['titre'];

Configuration du controlleur :
public function store(Request $request)
    {
        Livre::create(['titre' => $request->titre]);
        return redirect('livre');
    }
Utilisation Laravel
Ajouter un bouton dans la vue index
<a href="{{url('livre/create')}}"><button>Nouveau Livre </button></a
>
Ajouter les boutons de suppression :
<form action="{{url('livre/' . $livre->id)}}" method="post">
        @csrf
        @method('DELETE‘)
        <input type="submit" value="supprimer">
 </form>
Ajouter la route de suppression :
Route::delete('livre/{livre}', 'LivreController@destroy');

Configuration de la méthode destroy du controlleur


public function destroy(Livre $livre)
    {
        $livre->delete();
        return redirect('livre');
Utilisation Laravel
Activation de l’authentification :
composer require laravel/ui
php artisan ui vue --auth
    

Vous aimerez peut-être aussi