如何在Django模板中禁用FloatField的格式化
我就是找不到这个问题的明确答案,而且Django的IRC需要认证才能使用服务……
所以我的问题是:在使用Django的时候,怎么能在模板中强制给FloatFields设置某种格式呢?
问题很简单,我需要的是用点分隔的数字,比如:42547.34,但我得到的却是用逗号分隔的值……
这里有一个出现问题的模板示例:
{% for point in zone.points.all %}
{% if forloop.last %}
new google.maps.LatLng({{point.latitude|floatformat}},{{point.longitude|floatformat}})
{% else %}
new google.maps.LatLng({{point.latitude|floatformat}},{{point.longitude|floatformat}}),
{% endif %}
{% endfor %}];
谢谢你的时间。
附言:在使用管理员生成的表单时,我没有这个问题,浮点数显示得很正确(我的地区设置是en_US)。
7 个回答
14
我遇到了一个问题,就是在显示经纬度(lat和lng)值的时候出现了困难。为了处理这个问题,我想出了一个解决办法:
{{ value|safe }}
29
现在你可以强制输出一个值,而不受地区设置的影响。
{% load l10n %}
{{ value|unlocalize }}
摘自 https://docs.djangoproject.com/en/2.2/topics/i18n/formatting/#std:templatefilter-unlocalize
66
{{ float_var|stringformat:"f" }}
当然可以!请把你想要翻译的内容发给我,我会帮你把它变得简单易懂。