#liquid
#liquid
Вопрос:
Я думаю, это довольно просто, но не могу понять, возможно ли это. У меня есть число в шаблоне Liquid, которое должно содержать десятичную дробь только в том случае, если оно не является целым числом. К сожалению, в базе данных хранится значение с плавающей запятой (которое я не могу изменить), поэтому мой единственный вариант — попробовать сделать это в Liquid. По сути, если число равно 5.5
, я хочу, чтобы оно выводило это. Однако это число, 5.0
я хочу, чтобы оно выводилось 5
.
Я не вижу способа проверить, является ли число плавающим или нет. Идеи?
Ответ №1:
Этого можно было бы достичь с помощью некоторых фильтров liquid.
Сначала используется split
для разбиения числа на десятичную точку, затем last
для проверки, является ли последнее число 0
. Наконец, используйте remove
, чтобы избавиться от .0
.
Например:
{% assign result = 5.0 %}
{% assign splitResult = result | split: '.' %}
{% if splitResult.last == '0' %}
{% assign newResult = result | remove: '.0' %}
{% else %}
{% assign newResult = result %}
{% endif %}
{{ newResult}}
В этом случае {{ newResult }}
будет вывод 5
.
Надеюсь, это поможет!