ModeliXe, la solution template !

La Foire Aux Questions
Quelles librairies doivent être installées sur le serveur Apache pour que pyModeliXe puisse fonctionner ?

pyModelixe est écrit en Python, vous devez donc avoir l'interpreteur python d'installé. De plus, mod_python ou cgi doit pouvoir être activé. pyModeliXe utilise les expressions régulières compatibles perl, elles sont normalement présentes et activées sur tout les serveurs.

pyModeliXe est il open-source ?

Oui, pyModeliXe est placé sous licence LGPL. Et par ailleurs il est également gratuit :o) Si vous désirez vous joindre au développement de pyModeliXe ou nous faire part d'améliorations à effectuer, veuillez prendre contact avec nous, ou rejoindre le projet pyModeliXe sur SourceForge.

Puis je modifier les sources de pyModeliXe ?

Bien sur ! Et ce serait même sympa de nous en faire part !
C'est aussi pour profiter de la communauté de développeurs que pyModeliXe est OpenSource.
Mais si vous le faites, vous devez conserver les informations de licence originale de pyModeliXe, ainsi que le nom de l'auteur, l'historique et y ajouter vos propres améliorations datées, ainsi que votre nom, et éventuellement une adresse email où vous contacter.

Je ne vois pas l'intérêt de la méthode MxUrl() puisque dans le template on crée un mXattribut.

La méthode MxUrl formate un attribut mXattribut="href:xxx" en URL, ce que ne fait pas la méthode MxAttribut. De plus si vous gérez des paramètres de session MxUrl les intégre directement...
Les url sont des attributs particuliers qui sont gérés de manière particulière, c'est uniquement leur qualité d'attribut HTML qui leur doit d'être baliser en tant que mXattribut. La clé 'href' ou 'url' (les deux sont utilisables) est là justement pour signaler que cet attribut aura un traitement spécifique.

Comment gérer des profils utilisateurs sous pyModeliXe en utilisant le cache ?

Si aucune information n'est retirée du SID pour construire la page, il n'y a aucun problème.
Si effectivement la page est construite à partir d'informations extraites du SID, je vous conseille alors de ne pas spécifier pour cette page le SID en tant que paramètre de sessions (n'oubliez pas alors de le préciser lors de la construction des hidden et des urls), et de mettre une valeur de cache plus faible (la probabilité que la personne revienne sur cette page existe, mais elle seule pourra profiter du cache, donc ce n'est pas la peine de la stocker trop longtemps).

Le cache permet d'optimiser l'accès à des pages génériques, dans le cas d'un utilisateur identifié qui aurait accès à des pages spécifiques à son profil le cache ne sert plus à grand chose. Si ces pages spécifiques dépendent par contre de quelques paramètres que vous pouvez extraire et spécifier dans les urls, alors le problème est différent et vous pouvez très bien mettre en place un cache. Deux personnes avec un profil similaire accéderont à la même page mise en cache. Assurez vous seulement que le nombre de paramètres personnalisant la page est suffisamment petit pour qu'il y ait une probabilité non négligeable pour que plusieurs personnes partagent les mêmes.

Comment faire pour sortir d'un bloc une fois qu'on y est entré avec WithMxPath ?

Pour sortir d'un bloc dans lequel on est entré avec WithMxPath il existe deux solutions :

  • $pyModeliXe -> WithMxPath("") -> retour à la racine absolue.
  • $pyModeliXe -> WithMxPath("../sousBloc"); -> retour au bloc "sousBloc" inférieur (ou qu'il soit en dessous du bloc en cours).

Comment gérer les URLs ?

pyModeliXe propose une méthode pour formater des url en intégrant directement et automatiquement les paramètres de sessions, cette méthode est MxUrl.
. Cette méthode s'applique à tout les attributs dynamiques déclarés dans une balise MxAttribut. Elle est la seule méthode qui puisse gérer l'attribut dynamique "url". Consulter la documentation pour plus de précisions à ce sujet.

Comment faire pour enregistrer sur le disque le fichier généré par pyModeliXe ?

A l'appel de MxWrite() donner l'argument "out", la méthode vous renverra alors le fichier généré sans réaliser de sortie client. Il vous suffit alors d'enregistrer cette sortie sur un fichier ce qui donne:

                <?php
                    //....
                    $content = $maPage -> MxWrite("out");
                    $fil = fopen("monFichier.html", "a");
                    fputs($fil, $content);
                    fclose($fil);
                ?>
            
Et vos données sont enregistrées et visibles sur le fichier "monFichier.html".

Comment gérer les attributs des balises de formulaires avec pyModeliXe ?

Les remarques que je vais faire là, sont valables quelque soit les balises considérées.
Avec pyModeliXe vous avez deux manière de renseigner les attributs HTML d'une balise générée par pyModeliXe. Je vais prendre le cas des attributs cols et rows d'une balise Textarea, mais cette remarque est bien sur valable pour tout les types d'attributs de l'ensemble des balises. Vous pouvez soit les préciser de manière statique directement dans la balise pyModeliXe de cette manière:

<mx:formField id="ma balise" rows="5" cols="30" />
Soit en dynamique dans la méthode de génération de la balise :
$maPage -> MxFormField("ma balise", "textarea", "nomDeLaBalise", $nomDeLaBalise, ' rows="5" cols="30" ');

pyModeliXe - Moteur de template en Python - © Jonathan TREMESAYGUES 2008 - Exploitation sous les conditions de la licence GNU LGPL
Cette page a été générée par HomeMadeTemplate
Ce site (contenu et design) a été honteusement pompé sur http://modelixe.sf.net