2017-03-22 4 views
0

Comment passer un paramètre à un Presenter? Lire la documentation là-bas ne semble pas être un moyen.Passer les paramètres aux présentateurs (fuelphp)

https://fuelphp.com/docs/general/presenters.html

Contrôleur

$points = Presenter::forge('points', 'viewmy'); 
    $points->set('id', 5); 

Présentateur classe ou vue (j'ai essayé les deux):

var_dump($id); 
var_dump($this->id); 

Les deux var_dumps générer une erreur variable non déclarée

Ce dans la classe Présentateur n'a pas fonctionné: $ id = $ this-> get ('id');

Répondre

0

Je suis finalement arrivé au fond de ce numéro. J'utilisais la fonction setview dans mon Presenter pour changer en fonction de la condition. Cela signifiait que toutes les valeurs que j'avais fixées se perdaient.

Passer la vue dans le 4ème paramètre de forge et ne pas le définir dans le présentateur a résolu ce problème.

0

partir de la page que vous avez lié:

Dans votre code, vues et présentateurs sont interchangeables. Vous pouvez renvoyer des présentateurs à partir des actions de votre contrôleur, vous pouvez définir un présentateur en tant que partie partielle du thème ou l'affecter à une section de votre modèle de page. L'API de base du Presenter est compatible avec la vue. Cela facilite l'échange d'une vue pour un présentateur dans votre code sans avoir à faire une refonte majeure du code.

Ils ont exactement la même interface que les objets View réguliers. Vous pouvez par exemple utiliser la méthode set() ou passer les paramètres dans la méthode forge().