Список строк в Freemarker - PullRequest
       17

Список строк в Freemarker

14 голосов
/ 17 апреля 2009

У меня есть список строк в коде Java:

List<String> keywords = new ArrayList<String>();
keywords.add("Apple");
keywords.add("Banana");

и я хотел бы отобразить ключевые слова с помощью Freemarker: Яблоко, банан

Как это сделать?

PS: Я прочитал руководство и нашел несколько статей, предлагающих использовать <#list>, но результат такой: Apple,

Бананы

Ответы [ 5 ]

14 голосов
/ 23 февраля 2012

Если вам нужен список через запятую, вы можете использовать следующее:

<#list seq as x>
   ${x_index + 1}. ${x}<#if x_has_next>,</#if>
</#list>  

см .: http://freemarker.org/docs/ref_directive_list.html#pageTopTitle

13 голосов
/ 01 октября 2013

Начиная с версии 2.3.20 Freemarker, есть встроенная команда для разделенных запятыми списков .

Например, шаблон:

<# assign colors = ["red", "green", "blue"]>

$ {colors? Join (",")}

.. сгенерирует:

красный, зеленый, синий

6 голосов
/ 17 апреля 2009

FreeMarker сохраняет ваши пробелы (и EOL), но не добавляет их сам по себе. Итак, просто поместите все в одну строку:

<#list myListName as item>${item}</#list>
2 голосов
/ 18 февраля 2016

Начиная с версии 2.3.23, вы также можете использовать следующий код:

<#list users as user>
  <div>
    ${user}<#sep>, </#sep>
  </div>
</#list>

Взято из директивы sep .

1 голос
/ 17 апреля 2009

Freemarker предоставляет некоторые функции для управления пробельными символами, см. http://freemarker.sourceforge.net/docs/dgui_misc_whitespace.html

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...