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

  [Opened] initFromDao() et saveToDao(),

Posted by turowbye on 05/31/2007 19:06

Je n'arrive pas à utiliser correctement les fonctions initFromDao() et saveToDao().

Je vous fournis le code de ma fonction edit() pour vous permettre de voir dans quel contexte je désire les utiliser.

 
 function edit(){
    $rep = $this->getResponse('html', true);
    $rep->bodyTpl = 'main';
 
    /* IL FAUT DANS URLS.XML UNE VALIDATION SUR LE ID QU'IL SOIT UN ENTIER PLUS GRANS QUE -1
    */
 
    $tpl2 = new jTpl();
    $form2 = jForms::create('sample', $this->param('id'));
 
    if($this->param('id') == 0){  // New record
      $rep->title = 'Nouveau formulaire';
    }else{  // The record should exist
      $fact = jDao::get('chat~chat');
      $rec = $fact->get($this->param('id'));
      if($rec != null){  // The record exist
        $rep->title = 'Édition d\'un formulaire';
        $form2->setData('pk', $rec->pk);
        $form2->setData('nom', $rec->nom);
        $form2->setData('prenom', $rec->prenom);
      }else{  // The record don't exist
        $rep->title = 'Clé primaire inexistante';
        $rep->body->assign('MAIN2', 'La recherche de la clé PK : '.$this->param('id').' n\'existe pas.');
        return $rep;
      }
    }
    $tpl2->assign('form', $form2->getContainer());
    $tpl2->assign('id', $this->param('id'));
    $rep->body->assign('MAIN2', $tpl2->fetch('editdao'));
	
    return $rep;
 }
 

Windows 2000 - Apache 2.2.4 - PHP 5.2.2

  [Opened] Re: initFromDao() et saveToDao(),

Reply #1 Posted by bballizlife on 05/31/2007 19:40

Là comme ça sans regarder ton code, je ne dirais qu'une chose : jForms est bien noté comme expérimental et son implémentation n'est pas terminée. Son bon fonctionnement n'est nullement garanti.

jForms est prévu pour la beta3 et Laurent y travaille actuellement dessus dans une branche spéciale du dépôt svn.

Ceci dit il me semble que initFromDao() doit quand même fonctionner. Pour cela ton fichier chat.form.xml et "chat.dao.xml" doivent avoir les même élements afin que les correspondances puissent se faire. Tu pourras ensuite remplacer tes $form2->setData() par un seul $form2->initFromDao('ta~dao');


N'importe comment c'est dans la doc

  [Opened] Re: initFromDao() et saveToDao(),

Reply #2 Posted by bballizlife on 06/01/2007 11:53

Mais de rien ;)


N'importe comment c'est dans la doc

  [Opened] Re: initFromDao() et saveToDao(),

Reply #3 Posted by laurentj on 06/01/2007 20:46

@turowbye : tu as des exemples d'utilisation dans le module testapp de l'appli testapp. Regarde le code, ça peut t'aiguiller sur l'utilisation.

(désolé pour la doc inexistante pour le moment, mais ça sera écrit pour la beta3)

  [Opened] Re: initFromDao() et saveToDao(),

Reply #4 Posted by laurentj on 06/02/2007 12:07

Voir un petit descriptif de ce que je prevois et qui commence à fonctionner :-)

 
Page
  1. initFromDao() et saveToDao(),