仅在 Liquid 中显示非整数的小数
Only show decimal for non-integers in Liquid
我认为非常简单,但如果可能的话无法解决。我在 Liquid 模板中有一个数字,如果它不是整数,它应该只有一个小数位。不幸的是,数据库存储了一个浮点数(我无法更改),所以我唯一的选择是尝试在 Liquid 中执行此操作。本质上,如果数字是 5.5
我希望它输出那个。但是它的数字是 5.0
我希望它输出 5
。
我找不到检查数字是否为浮点数的方法。想法?
这可以通过使用一些 liquid filters.
首先使用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
.
希望对您有所帮助!
我认为非常简单,但如果可能的话无法解决。我在 Liquid 模板中有一个数字,如果它不是整数,它应该只有一个小数位。不幸的是,数据库存储了一个浮点数(我无法更改),所以我唯一的选择是尝试在 Liquid 中执行此操作。本质上,如果数字是 5.5
我希望它输出那个。但是它的数字是 5.0
我希望它输出 5
。
我找不到检查数字是否为浮点数的方法。想法?
这可以通过使用一些 liquid filters.
首先使用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
.
希望对您有所帮助!