【问题标题】:Using dot instead of comma when displaying a decimal number显示十进制数时使用点而不是逗号
【发布时间】:2015-08-10 18:06:22
【问题描述】:

在 db 中,该字段是十进制类型,并保存为 0.5

在实体中的字段

/** @ORM\Column(name="precio_x_ticket", type="decimal", scale=2) */

FormType 中的字段是这样配置的

->add('precio_x_ticket','money', array(
                    //'grouping' => true,
                    'currency' => false,
                    'label' => 'Precio por ticket',
                ))

从表单中保存时,我可以将数字保存为 0.5 或 0,5 这种格式,但在保存数字后总是返回这种格式 0,5,我想将其显示为 0.5

我的语言环境是 es

知道如何仅使用 symfony2.5 来解决这个问题吗?

【问题讨论】:

标签: php symfony twig


【解决方案1】:

由于我使用的是{{ form_start(formulario) }},所以我需要使用

{{ form_widget(formulario.precio_x_ticket, {'value': formulario.precio_x_ticket.vars.value|number_format(2, '.', ' ')}) }}

以#.## 格式显示值。

【讨论】:

    【解决方案2】:

    您可以在任何想要在自定义视图中显示数字的地方使用number_format。我不建议更改您的 locale 或进行其他系统更改,因为它会产生不可移植且依赖于系统/配置的代码。

    【讨论】:

    • 如何在 symfony2 中使用它来设置文本字段?
    • 如果您使用的是twig,则使用number_format 过滤器:twig.sensiolabs.org/doc/filters/number_format.html
    • 用例是当我将数据保存在文本字段中时,我将数字保存为“。”但是在提交表单并通过重置字段保持在同一页面后,值更改为“,”,如果我检查数据库,数字将保存为“。”
    • 在输入字段值中使用number_format twig 过滤器,即模板 sn-p:
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-09-22
    • 2021-06-28
    • 2012-06-09
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多