Dans mon process de publication HTML je suis en face d’un attribut de type enum, et quand j’utilise le mustache {{MonAttributEnum}} j’obtiens le code de l’attribut, ce que je trouve normal.
Existe-il une manière d’appeler une méthode pour avoir la description de l’enum en HTML ?
Ok vous passez les données brutes issues du search, donc pour les attributs il n’y a que les valeurs techniques (codes de listes de valeurs, 0/1 pour les booleens, dates au format YYYY-MM-DD, etc.)
Avant de voir comment ajouter/substituer les valeurs d’affichages je vous suggère déjà de revoir votre code car faire un search avec un unique filtre sur le row ID n’est pas du tout logique et pas efficace, mieux vaut faire un simple select mais de toute façon, ici, re-sélectionner dans un objet temporaire ce que vous avez déjà dans le record courant du this je ne comprend vraiment pas la logique… Bref votre code est inutilement compliqué et donc pas du tout optimal
Envoyez moi le code optimisé et je vous indiquerai comment faire pour les valeurs d’affichages dans ce contexte
PS: êtes vous bien sûr d’avoir besoin d’une page avec includes Bootstrap (BootstrapWebPage) ? Pour du HTML de base, à fortiori si on parle d’une page de publication, une simple WebPage suffit
Bon, indépendamment de mes remarques ci-dessus qui restent valables on a enrichi la classe helper MustacheTool avec des méthodes getRecord/getRecords qui permettent de formatter en JSON les données de l’objet soit au format technique soit au format displayable cf.
Ces méthodes sont utilisées par de nouvelles variantes de apply, par exemple il est désormais possible de publier simplement le record courant sur un template Mustache avec un code du genre:
public Object printHTML(PrintTemplate pt) {
WebPage wp = new WebPage(pt.getDisplay());
wp.append(MustacheTool.apply(this, "MY_MUSTACHE_TEMPLATE"));
return wp.toString();
}
où MY_MUSTACHE_TEMPLATE est une ressource HTML de l’objet