Go 中的枚举
数据库中使用了枚举 enum
来存储订单状态 orders.state
,然后在 model/order.go
中一堆状态常量:
type Order struct {
// ...
State string
}
const (
OrderStatePending = "pending"
OrderStateLocked = "locked"
OrderStatePaid = "paid"
OrderStateRevoked = "revoked"
OrderStateDone = "done"
)
既然说到 Go
的枚举,肯定有人要说 iota
了,那么,,用 iota
来实现该功能试试: