使用字段插件 2.0.2 时呈现没有千位分隔符的整数的最简单方法

Easiest way to render an Integer without thousands separator when using Fields plugin 2.0.2

我正在使用 Grails 3.0.2.

构建一个非常基本的应用程序

我有一个名为 Unit 的域 class,其中包含一个名为 season 的字段,其类型为整数,代表年份。

我已经使用命令 generate-views 生成脚手架视图。

一旦 运行 应用程序,当显示现有实例时,使用“,”作为千位分隔符显示季节,我想将其删除。

覆盖(仅)赛季格式的最简单方法是什么?

出于测试目的,我按以下方式修改了单元 class 的 show.gsp

<f:with bean="unit">
    <f:display />
    <f:display property="season" />
</f:with>

<f:display property="season" /> 仅显示“1,975”,但忽略了标签。

我试图理解 Fields plugin 的文档,但我没有达到我想要的效果,所以很明显我不理解它。

我在views/_fields/unit/season下添加了_displayWidget.gsp(我也在views/unit/season下尝试过),但是结果和之前完全一样,所以我假设插件没有占用他们考虑在内。

<g:formatNumber groupingUsed="false" number="${value}" />

我不熟悉 _displayWidget.gsp 约定,但更简单的方法可能是通过在 _display.gsp 下添加 _display.gsp 来覆盖 unit.season 属性 的显示=13=] 仅包含以下内容:

${value}

Diego,您可以使用 taglib formatNumber:

格式化任何给定的数字

https://grails.github.io/grails-doc/latest/ref/Tags/formatNumber.html

使用参数 'format' 并检查 DecimalFormat 模式以找到适合您的模式。

希望对您有所帮助!

通过创建 views/_fields/myDomainClass/myFieldName/_displayWrapper.gsp 并包含单行 ${value}

,我能够在 Grails 3.1.14 中使用它