[Zend] Notions en MVC


dorian53
WRInaute passionné
WRInaute passionné
 
Messages: 2215
Inscription: 10 Avr 2005

[Zend] Notions en MVC

Message le Mer Sep 09, 2009 19:10

Bonjour,

Voici quelques notions de base en MVC qui me posent problème.

Prenons l'exemple d'une structure de site.

Dans cet exemple, qu'est-ce qui est Controller ? Qu'est-ce qui est Action ? Qu'est-ce qui est Module ?
- sport/ est-il un controller, un module ?
- si sport/ est un module, comment créer /sport/laune ?
- Qu'est-ce que /foot/ ?
- Y a-t-il une notion entre dossier et page avec controller et action ?
- etc...

Problème tout simple, comment créer une page (contact par exemple) à la racine du site.
C'est à dire que je ne veux pas avoir à créer une URL du type http://www.example.com/index/contact

Je suis un peu perdu, merci de m'éclairer sur ces quelques concepts.


loran750
WRInaute passionné
WRInaute passionné
 
Messages: 2247
Inscription: 15 Mar 2005

Re: [Zend] Notions en MVC

Message le Mer Sep 09, 2009 19:17

Hello

En d'autre termes, tu chercherais un tutorial assez complet, un genre de kickstart que tu pourrais suivre pas à pas et qui te formerai aux bases du Zend Framework en quelques heures (sur les notions importantes).
Idéalement, il faudrait que ce soit un tutorial pour créer de A à Z un site web...

Si des gens ont des URLs à filer... En même temps, tu peux aller consulter le site officiel ou francophone du Zend.

lolo


dorian53
WRInaute passionné
WRInaute passionné
 
Messages: 2215
Inscription: 10 Avr 2005

Re: [Zend] Notions en MVC

Message le Mer Sep 09, 2009 21:29

Que répondre... Rien.

Quelqu'un d'autre qui pourrait me donner des pistes svp ?

ZelkiN
WRInaute impliqué
WRInaute impliqué
 
Messages: 500
Inscription: 27 Juil 2007

Re: [Zend] Notions en MVC

Message le Jeu Sep 10, 2009 18:02

d'apres mes notions en MVC :P tu a 3 principales "structures", toutes les URL que tu as mise ne sont que des Views que traite tes controllers aidé par les models

Un controller et un model ne peut pas etre accéssible via une URL, ton controller permet de stocker tes fonctions.

prenons par exemple l'url http://www.example.com/sport/

Si tu prend la structure ZEND, ton fichier view a modifier sera dans applications/views/scripts/sport et ce sera index.phtml
Cette page appelle des fonctions que tu devra définir dans applications/controllers/sportControllers.php
La page controller si je me souviens bien doit avoir le meme nom que ton dossier view autrement dit "sport"
Quand aux models ils sont appelés par les controllers pour établir les fonctions

Grossomodo tu as les view qui appelle les controllers qui eux appel les models pour accéder a la base de donnée, les models renvoie les info, les controllers les traite en fonction et les renvoi sous forme de variable aux views :P

Clair :P ? mdr

Sinon il est vrai que le site ZEND francophone est pas mal, perso j'ai "appris" ZEND avec un livre "debuter zend..."


dorian53
WRInaute passionné
WRInaute passionné
 
Messages: 2215
Inscription: 10 Avr 2005

Re: [Zend] Notions en MVC

Message le Jeu Sep 10, 2009 20:10

Rectification : les controllers utilisent les modèles puis génère la vue.

J'ai trouvé la réponse sur un autre forum.

Les questions que tu pose concernent en fait le routage, c'est à dire la détermination d'un module, d'un contrôleur, d'une action et de paramètres à partir d'une requête.

Par défaut la classe de routage utilisée par le ZF est Zend_Controller_Router_Route_Module.

Sauf erreur, cette classe scinde la requête HTTP en fonction du / dans un tableau puis répartis les éléments trouvés :
- si le premier élément correspond à un module alors cette classe considère que c'est le module et l'extrait du tableau
- le premier des éléments restant est extrait, c'est le contrôleur
- le premier des éléments restant est extrait, c'est l'action
- les éléments restants sont des paramètres, extraits par paire clé / valeur.


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité