SAND-framework/data/docs/06. Le conduit Symfony.md
Emmanuel ROY 73a505ce7b update :
- documentation markdown du framework
2021-07-12 15:35:54 +02:00

1.5 KiB

#Le conduit Symfony

Le conduit est une nouveautée de l'application, celle permet de réaliser un controlleur similaire a Symfony qui est dénomé ici Conduit car il prend en paramètre une route défini dans le fichier routing.yml.

Cette fonctionnalité permet de choisir la route indépendamment du moteur. Elle est utlie aussi pour créer des appels Curl et Ajax.

il faut instancier le fichier application/config/files/routing.yml avec la route de base et les routes que vous voulez conduire, par exemple:

home_route:  
  path:     /  
  defaults: { controller: 'FooController::indexAction' }  
  
foo_route:  
  path:     /foo  
  defaults: { controller: 'FooConduit::index' }  
  
foo_placeholder_route:  
  path:     /foo/{id}  
  defaults: { controller: 'FooConduit::load' }  
  requirements:  
    id: '[0-9]+'

et définir le Conduit correspondant avec les méthodes correspondantes dans le dossier application/include/conduits, ici:

<?php


use MVC\Classe\Implement\Conduit;

class FooConduit extends Conduit
{
    // Route('/foo')
    public function index()
    {
        echo "blob of foo";
        return $this->render('foo', array('page_title' => 'Foo', 'description' => 'FooConduit'));
    }

    // Route('/foo/{id}')
    public function load()
    {
        echo "load of foo";
        return $this->render('foo', array('page_title' => 'Foo', 'description' => 'FooConduit', 'id' => $this->id));

    }
}

Vous remarquerez que les variables passé en GET sont obtenu dans le conduit par $this->varname.