TUTORIAL EN COURS DE CREATION ET DE REDACTION
Un CRUD avec CopixForm
Créons un module simple possédant un script d'install
Arborescence à créer :
- crud_copix/actiongoups/default.actiongroup.php
- crud_copix/install/scripts/install.pdo_mysql.sql
- crud_copix/templates/crud.form.tpl
- crud_copix/templates/crud.list.tpl
- crud_copix/module.xml
module.xml contiendra la description de notre module
<?xml version="1.0"?> <moduledefinition> <general> <default name="crud_copix" description="CRUD avec CopixFORM" /> </general> </moduledefinition>
install.pdo_mysql.sql contiendra la requete de creation de la table
CREATE TABLE `tutorial_crud_copix` ( `id_crud` INT NOT NULL AUTO_INCREMENT PRIMARY KEY , `caption_crud` VARCHAR( 20 ) NOT NULL , `description_crud` TEXT NOT NULL ) CHARACTER SET utf8;
notre action 'default.actiongroup.php' contient juste les appels a nos templates
class ActionGroupDefault extends CopixActionGroup {
public function processDefault () {
return _arPpo ( new CopixPPO ( array('TITLE_PAGE'=>'Liste des élements')), 'crud.list.tpl');
}
public function processForm () {
return _arPpo ( new CopixPPO( array('TITLE_PAGE'=>'Edition de notre element')), 'crud.form.tpl' );
}
}
crud.list.tpl utilise la librairie CopixList? en lui spécifiant qu'il doit utiliser la dao (automatique) crud_copix, qu'il doit faire affichage de 10 elements par 10 elements, et que l'url pour l'edition est crud_copix
{copixlist list='crud_copix_list' dao='crud_copix' editUrl='crud_copix||form' max=10}
<a href="{copixurl dest="crud_copix||form"}"><img src="{copixresource path="img/tools/new.png"}" />Nouveau</a>
crud.form.tpl, lui nous affiche le formulaire grace a CopixForm. Nous commencons par le start qui créera les formulaires en lui associant la dao crud_copix. L'url au moment de la validation correspond a la propriété action, Nous spécifions le mode edit pour pouvoir arriver directement en mode edition. (si il n'est pas indiqué nous arrivons en mode consultation et un bouton editer nour permet d'etre en mode edition) Ensuite, nous créons les champs en specifiant le champ et le type de champ Puis nous fermons le formulaire.
{copixform_start form="crud_copix" dao="crud_copix" action='crud_copix||' mode='edit'}
Caption : {copixform_field field='caption_crud' type='varchar'}<br />
Description : {copixform_field field='description_crud' type='textbox'}<br />
{copixform_end}
Et voila, c'est fini, la prochaine fois nous verrons comment gérer des méthodes de validation personalisé, puis nous verrons l'utilisation de formulaire sans dao ni autre datasource.
