Salut à tous,

Je souhaiterai savoir s'il est possible d'afficher une page juste avec un controller sans action.

Je m'explique, j'ai un controller (qui me permet de télécharger un tableau en fichier en csv):

public function download($data)
{$this->Export->exportCsv($data, 'cities.csv')};

Que dois je mettre dans mon download.ctp ?! Sachant que j'ai essayé de mettre ça dans la vue et j'ai un message d'erreur disant que le Helper Export n'existe pas.

Merci à tous d'avance!

4 réponses


Lartak
Réponse acceptée

Bonjour Sean78.
Pensez tous à bien regarder les fichiers readme.md lorsque vous utilisez un plugin, je vous ai recopier la partie concernée ( Lien direct) :

  1. Add the Export Component to your Components array

Add 'Export.Export' to your Components array of the relevant controller (the first 'Export' refers to the name of the plugin, the second to the name of the component itself)

If you added it to your AppController.php, it might start something like this:

class AppController extends Controller {
    var $components = array('Export.Export', 'Auth', 'Session', 'Cookie', 'RequestHandler', 'Security');

Pour information, il n'y a pas de helper dans le plugin, c'est un composant (component).
Ensuite, tu ne peux pas afficher une page sur ton site, si aucune action n'y est rattachée via ton controller.

Par contre pour information, l'éditeur du plugin, conseille d'utiliser un autre plugin car celui-ci est déprécie depuis début juillet : Jose's CSV View Plugin

Sean78
Auteur

Voici le lien du pluggin : Texte du lien

Si quelqu'un utilise un Plugin déjà qui permet d'exporter un tableau en csv, je suis preneur.

Merci d'avance!

Si je ne dis pas de bêtises (c'est pas gagner :p)

"Je souhaiterai savoir s'il est possible d'afficher une page juste avec un controller sans action."
Si aucun action n'est spécifiée il prendra l'action "index" par défaut si celle ci est spécifiée.

Pour ton soucis je pense que cela vient du fait qu'il n'est pas charger par defaut, pour cela dans ton controller ajout ceci:

public $helpers = array('Text', 'Form', 'Html', 'Session' , 'Cache', 'Js','Export');

Oui il faut créer une fonction index() dans ton controller, et oui il faut rajouter Export dans la liste des helpers