Quick links: Content - sections - sub sections
EN FR
Quick Search Advanced search
 
Page

  [Opened] passer un enregistrement à une zone

Posted by RaphaelW on 05/08/2007 14:41

Bonjour

J'utilise la version Jelix 1.0 beta2.1

J'essaye de passer un enregistrement en parametre à une zone :

 //je crée ma factory
 $factory = jDao::get('articles');
 
 //je récupere le numero de l'article
 $id_article = $this->intParam('id_article', 1);
 
 //je récupere l'enregistrement correspondant
 $article = $factory->get($id_article)
 
 //j' affecte la zone 'article' à mon template principal
 //et lui passe l'enregistrement
 $rep->body->assignZone('MAIN', 'article', $article);

Et en retour j'obtient le message d'erreur

 [warning 1] ksort() expects parameter 1 to be array, object given C:\wamp\www\jelix\lib\jelix\utils\jZone.class.php 253
 [warning 1] Illegal offset type C:\wamp\www\jelix\lib\jelix\tpl\jTpl.class.php 45

Cela veut il dire que je dois passer impérativement un tableau et non pas un objet à ma zone ?

Cordialement

Raph

  [Opened] Re: passer un enregistrement à une zone

Reply #1 Posted by RaphaelW on 05/08/2007 15:03

Bon je me répond à moi même la solution est évidente et moi un peu bêta... Il suffit de faire

 $rep->body->assignZone('MAIN', 'article', array('article' => $article));

  [Opened] Re: passer un enregistrement à une zone

Reply #2 Posted by laurentj on 05/08/2007 17:06

oui je confirme, il faut passer un tableau :-)

 
Page
  1. passer un enregistrement à une zone