Bonjour,
Pour utilisé le plugin il faut utiliser cette ligne :

<?php echo $this->Media->iframe('Model',id); ?>

Moi dans ma vue admin_edit d'un event (comme un post) si je met $event'Event']'id] j'ai undefined varaible event. Je pense que c'est normal parce que quand on créer un event il n'a pas encore d'id. Mais si j'édite un event existant (qui a un id) c'est la même chose.
D'ailleurs les informations ne sont pas lues.

Voici ma fonction admin_edit:

function admin_edit($id = null){
        if($this->request->is('put') || $this->request->is('post')){
            if($this->Event->save($this->request->data)){
                $this->request->data'Event']'hotel_id'] = $this->Auth->user('id');
                if($this->Event->save($this->request->data)){
                        $this->Session->setFlash("Le contenu a bien été enregistré");
                        $this->redirect(array("action"=>"index"));
                    }
            } 
        }elseif($id){
            $this->request->data = $this->Event->read(); // devrait lire les informations non ? 
        }else{
            $this->request->data = $this->Event->getDraft('event');
        }
        $d'categories'] = $this->Event->Category->find('list');
        $this->Event->AnimateurEvent->contain('Animateur');
        $d'animateurs'] = $this->Event->AnimateurEvent->find('all',array(
            'conditions' => array('AnimateurEvent.event_id' => $id)
        ));
        $this->set($d);
    }

7 réponses


Maenhyr
Réponse acceptée
$d'event'] = $this->request->data;

Tu envoies le tableau $d dans ton $this->set(), ta variable $event doit donc être intégrée à ce tableau si tu veux pouvoir l'afficher dans ta vue.

Salut,
$event'Event']'id] j'ai undefined varaible event J'ai l'impression que tu n'as pas d'objet $event tout simplement.


$this->request->data = $this->Event->read(); // devrait lire les informations non ?

avec quel id ? Il te faut bien préciser l'id avant de faire ton read().

SwithFr
Auteur

Salut, alors oui en effet j'avais zapé la ligne pour l'id donc ça ne fonctionnait pas.
Apres pour le $event, j'ai bien essayé de faire un $event = $this->requesta->data; mais ça ne fonctionne pas mieux.
Alors comment avoir cet id ?

SwithFr
Auteur

C'était donc ça ^^
Mais comme toutes résolution de bug en entraîne un autre... erreur de jquery maintenant.

Je te conseille de lire le cookbook de CakePHP, j'ai vu que tu avais posté plusieurs topics sur des problèmes récurrents à CakePHP lorsque l'on débute. Lire le cookbook m'a permis de mieux comprendre son fonctionnement et de gagner de précieuses heures de développement.

SwithFr
Auteur

Le problème c'est que la plus part du temps je ne comprends pas le cookbook. Je ne maîtrise pas assez l'anglais pour le lire en original et la traduction des fois fait peur. De plus je trouve que c'est assez mal foutu, qu'il n'y a pas assez d'explication. On balance souvent des infos on sait pas d'où, comment, pourquoi etc. Mais c'est sur que ça devrait aider.

Si tu veux progresser dans le développement, tu vas être obligé de maitriser l'anglais, toutes les documentations importantes sont en anglais.

De plus je trouve que c'est assez mal foutu, qu'il n'y a pas assez d'explication. Je trouve au contraire qu'il est bien réalisé, comparé à d'autres éléments. Il te faut coupler le cookbook avec leur API pour vraiment maitriser le framework.

Ce qu'il te faut c'est le lire 1-2 fois en entier, sans rien coder et ensuite reprendre ton projet pour voir si ce que tu as lu te permet de mieux comprendre comment coder. J'ai la sensation que tu n'as pas pris assez de recul sur le code et que tu ne comprends pas d'où vient tes erreurs. Essaye de faire le point sur ce que tu as bien compris et ce que tu ne maitrises pas encore, tu pourras cibler les points faibles dans le cookbook.