Номер формата жидкости Typo3 без конечных нулей
В моем расширении typo3 я получил двойное значение, сохраненное через бэкэнд. Я хочу выставить это значение во внешнем интерфейсе.
Я хочу, чтобы двойной форматировался, чтобы использовать немецкий ',' в качестве десятичного разделителя (и с максимальной точностью 1). Так что я использовал f:format.number
viewhelper, чтобы установить это. Однако этот помощник по текучим средам устанавливает фиксированные десятичные дроби. Я хочу динамические десятичные дроби, так как я не хочу никаких конечных 0. 4.0 должен быть показан как 4. Если я не использую viewhelper (таким образом выводя необработанные данные), поведение будет таким, как хотелось бы. 4.0 показывает как 4, однако также показывает 4.5 как 4.5, а не как 4,5.
Есть ли способ "расфиксировать" десятичные дроби в окне просмотра? Я также пытался обернуть свой вывод, если условия проверять по модулю, но это никогда не возвращает положительный результат.
Как вывести форматированные двойные числа с точностью без конечных нулей?
1 ответ
Только для одной цифры (как в вашем примере) следующий код работал для меня. Для двойного вы должны вложить другое условие if в случае else, поскольку в жидкости нет else-if.
<f:if condition="{number} == {number -> f:format.number(decimals: 0)}">
<f:then>
<f:format.number decimals="0" decimalSeparator=",">{number}</f:format.number>
</f:then>
<f:else>
<f:format.number decimals="1" decimalSeparator=",">{number}</f:format.number>
</f:else>
</f:if>