2 回答
TA贡献1757条经验 获得超7个赞
我不知道你在做什么?这是go语言,不是java,为什么要定义两个struct?
您可以使用标签来完成您想要的。
type User struct {
gorm.Model `json:"-" gorm:"-"`
Name string `json:"name" gorm:"column:name"`
Address string `json:"address" gorm:"column:address"`
Phone string `json:"phone" gorm:"column:phone"`
}
var user User
err := database.DB.Model(User{}).Create(&user).Error
fmt.Println(err.Error())
TA贡献1847条经验 获得超11个赞
User 和 PostDto 结构不一样,使用一个模型从另一个模型获取和保存数据是错误的。
创建一个从 PostDto 转换为 User 的函数,然后在 Create 中使用它的输出
func (postDTo PostDTo) ToUser() *User {
return &User{Name: postDTo.Name, Address: postDTo.Address, Phone: postDTo.Phone}
}
或者,因为User和PostDto结构非常相似,将 json ignore 添加到gorm.ModelinUser并使用它而不是PostDto
type User struct {
gorm.Model `json:"-"`
Name string `json:"name"`
Address string `json:"address"`
Phone string `json:"phone"`
}
var postData models.User
c.BodyParser(&postData)
- 2 回答
- 0 关注
- 101 浏览
添加回答
举报