所以我创建了一个API,我需要存储一些东西的价格。
我使用gorm和gormigrate进行数据库迁移。 我只是想知道应该使用哪种正确的类型来存储小数。在存储货币时,我不应该使用浮动物。
type MyStruct struct {
Name string `json:"name" gorm:"not null"`
Description string `json:"description" gorm:"null"`
Price <what type should be here> `json:"price"`
}
答案 0 :(得分:3)
所以,根据@ain的建议,我使用了shopspring / decimal。但是当我做自动登记时,它给了我一个错误。
事实证明,我只需要使用gorm标记将类型设置为numeric
以使其正常工作:
type MyStruct struct {
Name string `json:"name" gorm:"not null"`
Description string `json:"description" gorm:"null"`
Price decimal.Decimal `json:"price" gorm:"type:numeric"`
}