Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 14-02-2008 13:01:34

whitespirit
Membre
Date d'inscription: 25-01-2008
Messages: 393

Accesseur et Selecteur dans ActionControlleur

Bonjour,

Dans mon code, je récupère l'identité d'un utilisateur connecté par : $this->view->user = Zend_Auth::getInstance()->getIdentity();

Dans la vue j'accède à un champs de table par : $this->escape($this->user->real_name);

Je souhaiterai que la vue accède au champs désiré par $this->GetRealName(); - par souci de sécurité et surtout pour empêcher la vue de modifier l'état de mes variables (ce n'est pas moi qui codera la partie Vue du MVC, j'espère).

Logiquement j'aurai créer la classe GetRealName() dans le Controlleur mais n'ayant pas encore utilisé les helpers, je demande votre avis pour se genre de fonction Get_() et Set_(). Les helpers sont fait pour ça ? ZF met un mécanisme à ce sujet pour ce traitement ?

Je pose la question qui pourtant parait bête parceque je me souviens d'avoir vu un article pour empêcher la vue de modifier les données, mais je n'arrive plus à le trouver.

Merci :-)

Hors ligne

 

#2 14-02-2008 16:10:34

sekaijin
Membre
Date d'inscription: 17-08-2007
Messages: 1137

Re: Accesseur et Selecteur dans ActionControlleur

ne jamais donner d'objet applicatif à la vue
la vue ne dois recevoire que des valeurs
donc

Code:

$this->view->user = clone(Zend_Auth::getInstance())

est un minimum

tu peux te créer une classe User qui prend Zend_Auth::getInstance() en paramétre de construction et qui contient tes méthode pour la vue
tu feras alors ainsi

Code:

$this->view->user = new User (Zend_Auth::getInstance())

tu poura alors faire

Code:

$this->user->GetRealName();

mais là encore mieux vaut recopier les valeur dans l'objet que de donnéer une référence à un objet en session
sinon la vue peut le manipuler.

A+JYT

Hors ligne

 

#3 15-02-2008 09:57:49

Mr.MoOx
Administrateur
Lieu: Toulouse
Date d'inscription: 27-03-2007
Messages: 1444
Site web

Re: Accesseur et Selecteur dans ActionControlleur

Tu peux aussi peut être faire un helper 'user' je pense
Ainsi tu aurais

Code:

$this->user()->methodeQueTuVeux()

Enfin je sais pas trop ce qui est le  mieux.

Hors ligne

 

Pied de page des forums

Propulsé par PunBB
© Copyright 2002–2005 Rickard Andersson
Traduction par punbb.fr

Graphisme réalisé par l'agence Rodolphe Eveilleau
Développement par Kitpages