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

  [Opened] [Résolu] Création d'un lien de mise à jour dans un crud

Posted by info2012 on 12/06/2013 15:57

Bonjour,

Dans ma base de données, j'ai une table taxon qui dépend d'un projet. Je souhaite mettre au niveau du crud_view, un lien qui permette de rentrer un autre taxon pour le même projet, juste après la création du taxon précédent.

Dans le crud il faut donc que je récupère la clé du projet, et pas celle du taxon comme c'est le cas par défaut dans le template.

Voilà ce que j'ai mis dans le template:

<li><a href="{jurl 'admintaxons~taxonsClients:precreate', array('id'=>'cle', $offsetParameterName=>$page)}" class="crud-link">{@adminprojets~crud.link.create.autre.taxon@}</a></li>

Et voilà ce que j'ai mis dans le controleur:

protected function _afterCreate($form, $id, $resp) 
      {
	$id_projet = $form->getData( 'cle_projet_taxon');
	$resp->params['cle']= $id_projet;
      }

Je sais qu'il manque un bout de code, il faudrait que je puisse créer un paramètre dans $rep non? Comment récupérer cette fichu cle du projet lors de la creation d'un taxon pour la ré-afficher dans le lien du template view? Je sais pas si je suis très claire?

Merci beaucoup.

Bonne journée.

  [Opened] Création d'un lien de mise à jour dans un crud

Reply #1 Posted by laurentj on 12/10/2013 13:04

Bonjour,

ce serait plutôt redéfinir _view, pour injecter dans le template crud_view l'id du projet, je pense. Et sinon je pense qu'il faut se balader l'id du projet entre chaque page du crud, donc l'inclure dans chaque template. Il faut donc redéfinir bon nombre des methodes pour récupérer ce paramètre et l'injecter dans le template.

  [Opened] Création d'un lien de mise à jour dans un crud

Reply #2 Posted by info2012 on 12/11/2013 15:15

Bonjour,

Désolée pour cette réponse tardive, et merci Laurent pour ton aide:

Dans le formulaire j'ai mis un champ caché avec l'id du projet.

Dans le contrôleur, j'ai écrit la fonction _view:

protected function _view($form, $resp, $tpl) 
		{
		$cle_projet_taxon = $form->getData('cle_projet_taxon');
		$tpl->assign('cle_projet_taxon',$cle_projet_taxon );
		}

Dans le template, voilà le lien qui permet de rentrer des nouveaux taxons pour ce même projet:

<li><a href="{jurl 'admintaxons~taxonsClients:precreate', array('id'=>$cle_projet_taxon, $offsetParameterName=>$page)}" class="crud-link">{@adminprojets~crud.link.create.autre.taxon@}</a></li>

Bonne journée. :)

 
Page
  1. Création d'un lien de mise à jour dans un crud