Bonjour,
J'ai découvert un petit souci avec la pagination:
J'ai créé un petit projet avec 2 tables :
- categorie(id, libcat)
- outil(id, idcat, nom) avec la jointure outil.idcat=categorie.id
J'ai généré les modéles avec un getSelect sur la table categorie
Je génère un CRUD sur la table outil avec pagination, et en indiquant le getSelect sur la catégorie
Quand j'exécute, j'obtiens une erreur :
Variable tJoinmodel_categorie inexistante dans le template outil::list
J'ai regardé le code généré. Le problème vient de la méthode _list dans la classe module_outil :
La ligne $oView = new _view('outil::list'); existe deux fois, si bien que les initialisations faites par les lignes $oView->tOutil = $tOutil; et $oView->tJoinModel_categorie... sont perdues.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 public function _list(){ $tOutil=model_outil::getInstance()->findAll(); $oView=new _view('outil::list'); $oView->tOutil=$tOutil; $oView->tJoinmodel_categorie=model_categorie::getInstance()->getSelect(); $oModulePagination=new module_pagination; $oModulePagination->setModuleAction('outil::list'); $oModulePagination->setParamPage('page'); $oModulePagination->setLimit(5); $oModulePagination->setPage( _root::getParam('page') ); $oModulePagination->setTab( $tOutil ); $oView=new _view('outil::list'); $oView->tOutil=$oModulePagination->getPageElement(); $this->oLayout->add('main',$oView); $oViewPagination=$oModulePagination->build(); $this->oLayout->add('main',$oViewPagination); }
Bonne journée
Partager