1.3.1 Vue d'ensemble

CakePHP suit le motif de conception logicielle MVC. Programmer en utilisant MVC sépare votre application en 3 parties principales :

  1. Le Modèle représente les données de l'application
  2. La Vue affiche une présentation des données du modèle
  3. Le Contrôleur intercepte et route les requêtes faites par le client
  4. Figure 1

    Figure: 1: Une requête MVC basique

    La figure 1 montre un exemple de requête MVC sommaire avec CakePHP. Pour illustrer cela, supposons qu'un client nommé "Ricardo" a simplement cliqué le lien "Achetez un Cake personnalisé maintenant !" sur la page d’accueil de votre application.

    1. Ricardo clique le lien qui pointe vers http://www.exemple.com/cakes/acheter et son navigateur envoie une requête à votre serveur web.
    2. Le répartiteur (dispatcher) analyse l’URL (/cakes/acheter) et transmet la requête au contrôleur concerné
    3. Le contrôleur exécute la logique spécifique de l’application. Par exemple, il peut vérifier si Ricardo s’est identifié.
    4. Le contrôleur utilise aussi les modèles pour obtenir l’accès aux données de l’application. Le plus souvent, les modèles représentent une table de la base de données, mais ils peuvent aussi représenter des entrées LDAP, des flux RSS ou des fichiers sur l’ordinateur. Dans cet exemple, le contrôleur utilise un modèle qui récupère, dans la base de données, les derniers achats de Ricardo.
    5. Une fois que le contrôleur a effectué ses traitements « magiques » sur les données, il les transmet à une vue. La vue récupère ces données et les formate pour les présenter à l’utilisateur. Les vues dans CakePHP sont le plus souvent au format HTML, mais une vue pourrait tout aussi bien être, en fonction de vos besoins, un document PDF ou XML, ou bien un objet JSON.
    6. Une fois que la vue a utilisé les données du contrôleur pour construire une vue de rendu complète, le contenu de cette vue est renvoyé au navigateur de Ricardo.

    Presque chaque requête à votre application suivra ce schéma de base. Nous le retrouverons plus tard, dans de nombreux cas particuliers de Cake, gardez-le donc dans un coin de votre esprit tandis que nous poursuivons.