получить последнюю запись из списка в freemarker - PullRequest
3 голосов
/ 04 мая 2011
    <select name="showYears">
            <#list payrollYears as year> 
                <option value="${year.year}">${year.yeardesc}</option>
            </#list>        
    </select>

Я получаю список зарплатных лет от моего контроллера и перебираю список в freemarker и добавляю значение в поле выбора. Я хочу, чтобы мое последнее значение списка было выбрано значение в последнем, как я могу это сделать

Ответы [ 3 ]

9 голосов
/ 04 мая 2011

Вы могли бы сделать что-то вроде

<#list payrollYears as year> 
      <option value="${year.year}" <#if !(year_has_next)>selected</#if> >${year.yeardesc}</option>
</#list> 
3 голосов
/ 10 мая 2016

Для FreeMarker 2.3.24 вы можете сделать что-то вроде year?has_next вместо year_has_next.

  • item_has_next (устарело item?has_next): логическое значение, которое указывает, является ли текущийэлемент является последним в последовательности или нет.

См. Документы FreeMarker

1 голос
/ 31 октября 2018
<#list body.result as school_names_list>
{
  "NAME": <#if school_names_list.NAME??>"${school_names_list.NAME}"<#else>""</#if>,
  "ADDRESS": <#if school_names_list.ADDRESS??>"${school_names_list.ADDRESS}"<#else>""</#if>,
   <#if school_names_list?is_last><#else>,</#if>
</#list>


//Here **school_names_list** is a list and we check the last element though **school_names_list?is_last** (where list name is school_names_list)

//In this example, if it the last element, ***we'll avoid adding "," else we add "," as per JSON rules of a list.***
...