Raccourcis : Contenu - rubriques - sous rubriques
EN FR
Recherche Rapide Recherche avancée
 
Page

  [Ouvert] de la logic dans un template

Posté par foxmask le 29/08/2008 13:48

Bonjour j'ai tenté de faire ceci :

 {$cat_name = ''}
 {foreach $list as $news}
 {if $cat_name != $news->cat_name}
 <h2 class="news_cat"><span><a href="{jurl 'news~view_cat@classic',  array('cat_id'=>$news->cat_id,'cat_name'=>$news->cat_name)}" title="{$news->cat_name}">{$news->cat_name}</a></span></h2>
 {/if}
 <div class="block">	    
     <h3 class="news"><span>{$news->news_title}</span></h3>
 	<div class="box">
		<div class="inbox">			        
			{$news->news_content}
			<p class="infos">{$news->news_date}</p>
		</div>
	</div>
 </div>
 <br/>
 {$cat_name = $news->cat_name}
 {/foreach}

mais "on n'a pas le droit" de jouer avec des variables comme en PHP dans un template il semblerait.

erreur obtenue :

 [exception 309] Dans le tag $cat_name = '' du template E:\wamp\www_jelix\tmj\modules/news/templates/news.tpl, le caractère = n'est pas autorisé E:\wamp\www_jelix\lib\jelix\tpl\jTplCompiler.class.php 512

Comme fait on ?


@GitHub - Forum HaveFnuBB! powered by Jelix - Le Booster Jelix !

  [Ouvert] Re: de la logic dans un template

Réponse #1 Postée par bballizlife le 29/08/2008 14:04

Tout d'abord, si Jelix suis un modèle MVC c'est pour séparer notamment la partie logique de la partie présentation. Évitons donc la logique métier dans les templates.

Ceci dit, ici tu cherche simplement à créer une variable $cat_name.

  • Pourquoi ne la créé tu pas, en l'initialisant, dans ton controller puis en l'assignant au template ?
  • Si vraiment tu tiens à faire son initialisation dans le template, ce que tu cherche à faire est un assign : {assign $cat_name = ''} (cf documentation sur jTpl)

N'importe comment c'est dans la doc

  [Ouvert] Re: de la logic dans un template

Réponse #2 Postée par foxmask le 29/08/2008 14:12

c'est de la logique de présentation non métier :) on le voit bien là je vuex afficher la categorie qu'une seule fois.

merci.


@GitHub - Forum HaveFnuBB! powered by Jelix - Le Booster Jelix !

 
Page
  1. Migration 1.1.6 > 1.2b1 => Module inconnu dans le sélecteur >
  2. Re: Effacer le cache d'une appli à partir d'une autre appli >
  3. Appel à contributions, donnez votre avis >
  4. [HaveFnuBB] Tri des sujets >
  5. Restart Apache et connexion db2/As400 >
  6. Re: HaveFnuBB! 1.3.4 >
  7. Re: gestion des Urls >
  8. Re: de la logic dans un template