J'ai une liste avec des éléments en double, j'ai besoin d'utiliser la vélocité
par exemple, les messages contiennent des éléments dupliqués p> Je veux supprimer le duplicate en utilisant la vitesse, p> Toute aide serait appréciée p> p>
4 Réponses :
Vous ne pouvez pas faire cela en vélocité. Vous devez fournir un modèle qui ne contient aucun doublure. Le moyen le plus simple consiste à utiliser Si vous ne pouvez vraiment pas réussir le modèle approprié, vous pouvez essayer de définir un outil personnalisé A> qui prend une liste et retourne un ensemble, mais ce ne serait pas facile. P> nouveau hashset
égale (..) p> Méthode) P>
En plus de ne pas être possible dans la vélocité, d'un point de vue architectural Ce que vous voulez n'a pas de sens du tout. La partie "Supprimer des doublons" est une sorte de logique et cela doit être pris en charge à la bonne place. Une vue n'est pas le bon endroit pour le faire. Donc, vous devriez le faire par tous les moyens de Java et même être heureux que ce n'est pas possible en vélocité. P>
Même si votre rôle ne permet pas de modifier le code Java, cela doit encore être résolu en Java. P>
Juste pour l'argument, car d'autres ont dit que cela n'est pas possible avec la vitesse, je voulais montrer qu'il est en fait possible avec la vitesse, mais toujours non recommandé.
Pour ceux qui sont intéressés par la manière dont cela pourrait être fait: p>
Il est encore plus facile avec les versions plus récentes, car vous pouvez utiliser la méthode "contient" sur la liste. Vous pouvez donc simplement utiliser une boucle unique et ajouter tous les objets à une liste, qui ne sont pas déjà contenus, ou vous pouvez même utiliser le type de carte Velocit et enregistrer les éléments sous forme de touches ;-)
Ceci est possible, ce qui devrait fonctionner en fonction de votre version de la vitesse. Un peu plus concis que la réponse ci-dessus.
#set($uniquePosts = []) #foreach($post in $posts) #if( ! $uniquePosts.contains( $post.name ) ) #if( $uniquePosts.add($post.name) ) #end ##note the if above is to trap a "true" return - may not be required $post.name #end #end
Et encore plus simple: #if (! $ seulseposs.contains ($ post.name) && $ uniqueEposts.add ($ post.name)) #end code>
Ces choses doivent être résolues sur le côté Java, la vélocité n'a pas été conçue pour construire des structures de données.