具有多个映射符号的结构
structs with multiple mapping notations
我有这两个代表相同实体的结构(一个来自 Json 文件,另一个来自数据库)
type DriverJson struct {
ID int `json:"id"`
Name string `json:"name"`
}
type DriverOrm struct {
ID int `orm:"column(id);auto"`
Name string `orm:"column(name);size(255);null"`
}
我想将它们合并为一个Driver结构,如何合并映射符号(orm:, json:)?
谢谢
如 reflect.StructTag
的文档中所述,按照惯例,标记字符串的值是 space 分隔的 key:"value"
对,因此简单地说:
type DriverJson struct {
ID int `json:"id" orm:"column(id);auto"`
Name string `json:"name" orm:"column(name);size(255);null`
}
详情见What are the use(s) for tags in Go?
我有这两个代表相同实体的结构(一个来自 Json 文件,另一个来自数据库)
type DriverJson struct {
ID int `json:"id"`
Name string `json:"name"`
}
type DriverOrm struct {
ID int `orm:"column(id);auto"`
Name string `orm:"column(name);size(255);null"`
}
我想将它们合并为一个Driver结构,如何合并映射符号(orm:, json:)?
谢谢
如 reflect.StructTag
的文档中所述,按照惯例,标记字符串的值是 space 分隔的 key:"value"
对,因此简单地说:
type DriverJson struct {
ID int `json:"id" orm:"column(id);auto"`
Name string `json:"name" orm:"column(name);size(255);null`
}
详情见What are the use(s) for tags in Go?