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

2.2 KiB

#Le contrôleur de base

il vous faut instancier trois fichiers sous cette forme:

  • application/include/modeles/name.model
name : name
page_title : Page de l'application
description : Description de la page
engine : blade
authentification : no
ariane : {acceuil, name}
arianelink : {index, name}
params1 : {val1,val2}
params2 : val

il faut absolument renseigner le name avec le nom générique de la page en minuscule, SAND n'est pas sensible à la casse sur le nom de la page. Désolé vous ne pourrez pas jouer avec la casse des caractères pendant le developpement des nouvelles pages.

  • page_title permet de modifier le contenu de la balise html title,
  • description permet de modifier le contenu de la balise meta description.
  • engine est optionnel, sa valeur par défaut est 'blade', cette variable permet de charger un uatre moteur de rendu. Si vous êtes plus a l'aise avec Twig pas de problèmes, cependant vous ne pourrez pâs charger un module Symfony aussi facilement...
  • Enfin les parametres suivants params1,params2 sont optionnels et permettent de passer des valeurs dans le controlleur ou dans la vue.
  • application/include/controlleurs/name.php
<?php
use MVC\Classe\Logger;
$templateData = array(
	"templating_a"=>'blade',
	"templating_b"=>'twig',
	"templating_c"=>'edge'
	);
//recuperation des paramètres contenus dans le .model
$var[] = $params2;
foreach( $params1 as $key => $value ){
	$var[] = $value;
}
Logger::addLog('ok', 'Hello world');

tout en sachant que la variable $templateData est envoyé à la vue Blade

  • application/include/vues/view/name.blade.php
@extends('body')

@section('sidebar')
 @parent
  <p>This is appended to the master sidebar.</p>
@endsection

@section('content')
    <a href="{{ \MVC\Classe\Url::link_rewrite(false, 'accueil', []) }}">Revenir a l'acceuil ?</a>
    <hr/>
    {{$templating_a}}::{{$templating_b}}::{{$templating_c}}
    {{-- récupération des paramètres contenus dans le model --}}
    {{$params2}}
    @foreach ($param1 as $key => $value)
	    {{$key}} -> {{$value}}
    @endforeach

@endsection

par exemple...


Pour les instancier facilement vous pouvez utiliser la commande: php console/bin.php page:add