Go模板:货币管道格式化?

huangapple go评论85阅读模式
英文:

Go templates: Currency pipe format?

问题

我正在尝试在Go模板中表示货币。

{{.cash}}

但是现在,cash的值是1000000。

是否有可能将其输出为1,000,000?

是否有类似于{{.cash | Currency}}的格式化器?
如果没有,我该如何获得所需的输出?

谢谢。

英文:

I'm trying to represent money in a go template.
{{.cash}}

But right now, cash comes as 1000000

Would it be possible to make it output 1,000,000 ?

Is there some sort of {{.cash | Currency}} formatter?
If not, how do I go about getting the desired output?

Thanks.

答案1

得分: 1

你可以利用github.com/dustin/go-humanize来实现这个功能。

funcMap := template.FuncMap{
    "comma": humanize.Comma,
}
t := template.New("").Funcs(templateFuncs).Parse(`A million: {{comma .}}`)
err := tmpl.Execute(os.Stdout, 1000000)
if err != nil {
    log.Fatalf("execution: %s", err)
}
// A million: 1,000,000
英文:

You can leverage github.com/dustin/go-humanize to do this.

funcMap := template.FuncMap{
	"comma": humanize.Comma,
}
t := template.New("").Funcs(templateFuncs).Parse(`A million: {{comma .}}`)
err := tmpl.Execute(os.Stdout, 1000000)
if err != nil {
  log.Fatalf("execution: %s", err)
}
// A million: 1,000,000

huangapple
  • 本文由 发表于 2015年7月6日 10:38:00
  • 转载请务必保留本文链接:https://go.coder-hub.com/31237072.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定