J'ai un modèle Freemarker qui contient un ensemble d'espaces réservés pour lesquels des valeurs sont fournies lors du traitement du modèle. Je veux conditionnellement partie du modèle si la variable userName est fourni, quelque chose comme:Comment vérifier si une variable existe dans un modèle FreeMarker?
[#if_exists userName]
Hi ${userName}, How are you?
[/#if_exists]
Cependant, le manuel FreeMarker semble indiquer que if_exists est obsolète, mais je ne peux pas trouver un autre moyen d'y parvenir . Bien sûr, je pourrais simplement fournir une isUserName variable booléenne supplémentaire et l'utiliser comme ceci:
[#if isUserName]
Hi ${userName}, How are you?
[/#if]
Mais s'il y a un moyen de vérifier si existe userName je peux éviter d'ajouter cette variable supplémentaire.
Dans le cas où quelqu'un d'autre aurait été éjecté par cela, la syntaxe #if devrait être entourée de moins de et plus grand que les caractères plutôt que les crochets. par exemple: <#if userName ??> – Cameron
Il est réellement possible d'utiliser cette syntaxe, donc je viens de suivre la syntaxe de la question: voir http://freemarker.sourceforge.net/docs/dgui_misc_alternativesyntax.html –
Ceci seulement Vérifiez si la var existe. Mais si vous avez une chaîne vide dans "userName", le <#if userName ??> retournera vrai !! Voir @ user1546081 réponse sur cette page pour résoudre ce problème. –