Salut j'ai un petit problème avec la fonction Paginate de cake php.

C'est pour faire une requête avec dans la table "events" dans ma BDD.

Cette fonction retourne une requête.

Javais déjà réussit la 1er fois, mais j'ai perdu le fichier.

Voici le mon controller EventsController :

/**
     * Permet d'afficher tous les événements sxur une page.
     **/
     function index() {
        $d'Event'] = $this->Paginate('events');
        $this->set($d);
     }

Dans le model "Event" j'ai le code source suivant :

<?php
class Event extends AppController {

    public $name = 'Event';
    public $useTable = 'events';
}

Le message d'erreur qui s'affichent est le suivant :

Error: An Internal Error Has Occurred.

J'ai du faire une faute de frappe dans la fonction et que je ne réussit pas à trouver la source du problème.

Merci en avance de votre aide.

11 réponses


Ilan
Réponse acceptée

Essaye de remplacer :

$d'Event'] = $this->Paginate('events');

par

$d'events'] = $this->Paginate('Event');

;)

Perso je ne vois pas d'erreurs. Il y a une ligne donné avec ton message d'erreur?

D'autre infos?

Salut,
Dans app/config/core.php , change

Configure::write('debug', 0);

en

Configure::write('debug', 2);

Si ce n'est déjà pas fait.
Ce n'est pas la seule solution à cette erreur mais c'est la plus courante.

As-tu déclaré don tableau ?
moi perso, j'utilise cette écriture :

$d = $this->paginate('Event');

$this->set('events' , $d);
lakamark
Auteur

Ça ne fonctionne pas.

Salut, tu es sous quel cakephp et en local ou en ligne ?

lakamark
Auteur

En local javais déjà réussit à faire une requête avec la fonction paginate. Je me rappelle plus la syntaxe à respecté pour faire une requête de l'exemple suivant :

Le résultat de la fonction paginate :

SELECT Post.id, Post.name, Post.slug, Post.content, Post.type, Post.created, Post.online, Post.category\_id FROM posts AS Post WHERE type = 'post' AND online = 1 AND created <= NOW() ORDER BY Post.created DESC LIMIT 10

Ceci est un exemple de ce que elle devra retourner avec la table "events" par exemple.

lakamark
Auteur

Qu'est ce que je fait quand il y a un message d'erreur qui s'affichent

Fatal error: Call to undefined method Event::hasMethod() in /Users/mac-antoinelacasse/Desktop/musicalitymaker/lib/Cake/Controller/Component/PaginatorComponent.php on line 163

Laisse moi deviné tu es sur Cake V 2.2 ou V 2.1?

Heu, ton Modèle hérite d' AppController dans tes exemples. Si c'est un modèle, il doit étendre AppModel

lakamark
Auteur

C'est Réglé Merci de votre aide!