我正在使用symfony 2.8,我正在显示一个带有十进制数字的表单,在我的html中,我有转储(form.numberwithdecial),这有一个格式(66.45)例如,但是当我的表单被渲染时,它有这种格式(66,45)。 我用这些数字计算,这是一个问题。因为我的resutl返回NaN。如何使用带小数而不是逗号来渲染带小数的数字?谢谢。
Twig:
... some code
<td class="form-group tdpvd">
{% if form_errors(articulo.pvd) %}
{{ form_widget(articulo.pvd, {'attr': {'class': 'form-control pvd error listener', 'data-prototype':'__articulos__'}}) }}
{% else %}
{{ form_widget(articulo.pvd, {'attr': {'class': 'form-control pvd listener', 'data-prototype':'__articulos__'}}) }}
{% endif %}
</td>
<td class="form-group tdpvp">{{ dump(articulo) }}
{% if form_errors(articulo.pvp) %}
{{ form_widget(articulo.pvp, {'attr': {'class': 'form-control pvp pvp__articulos__ error listener', 'data-prototype':'__articulos__'}}) }}
{% else %}
{{ form_widget(articulo.pvp, {'attr': {'class': 'form-control pvp pvp__articulos__ listener', 'data-prototype':'__articulos__'}}) }}
{% endif %}
</td>
<td class="form-group tdcantidad" style="width: 10em">
{% if form_errors(articulo.cantidad) %}
{{ form_widget(articulo.cantidad, {'attr': {'class': 'form-control cantidad__articulos__ error listener cantidad', 'data-prototype':'__articulos__'}}) }}
{% else %}
{{ form_widget(articulo.cantidad, {'attr': {'class': 'form-control cantidad__articulos__ listener cantidad', 'data-prototype':'__articulos__'}}) }}
{% endif %}
</td>
... some code
编辑:
我更改了我的twig配置的config.yml:
app/config/config.yml
# Twig Configuration
twig:
debug: "%kernel.debug%"
strict_variables: "%kernel.debug%"
number_format:
decimals: 2
decimal_point: '.'
答案 0 :(得分:0)
symfony配置中的twig衍生物还支持以下条目:
number_format:
decimals: 2
decimal_point: '.'
答案 1 :(得分:0)
您可以通过将区域设置更改为使用&#34;的方式来更改数字的显示方式。&#34;而是使用Twig中的number_format过滤器。如果您在整个应用程序中默认需要格式化,后者可能会很乏味。
更改区域设置
config.yml:
parameters:
locale: en # Or any other locale that uses . instead of ,
framework:
templating:
engines: ['twig']
default_locale: "%locale%"
在Twig模板中使用number_format:
{{ 66.45 | number_format(2, '.', ',') }}