在 Gorm 中动态获取字段的大小

我正在寻找一种从GORM模型中动态获取字段大小的方法。


一个明显的用例是,当您想要验证对象中保存的数据是否不超过GORM模型的定义,从而超过数据库列的大小时。


type MyStruct struct {

    field1 string `gorm:"size:10"`

}



func main(){

    s := MyStruct {field1: "abcdefghijklmnopqrstuvwxyz"}  // len 26 > 10 

    

    // if len(s.field1) < ...

    db.Create(&s)  // This will panic

}

有没有办法在运行时获取该值?10


红颜莎娜
浏览 128回答 1
1回答

倚天杖

有了包装,我们可以!reflect文档:&nbsp;https://golang.org/pkg/reflect/#StructTag使用给定的示例编写代码:https://play.golang.org/p/1tmvU2eTkHJ
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go