Подскажите пожалуйста, у меня есть функция для обновления значения тех полей в базе данных которые пришли с фронтенда и которые не являются пустой строкой
func EditProduct(c *gin.Context) {
id := c.Params.ByName("id")
var body ProductReq
var product models.Product
if err := c.ShouldBindJSON(&body); err != nil {
log.Fatal(err.Error())
return
}
database.DB.Where("id = ?", id).First(&product)
if body.Title != "" {
product.Title = body.Title
}
if body.Type != "" {
product.Type = body.Type
}
if body.Img != "" {
product.Img = body.Img
}
if body.Brand != "" {
product.Brand = body.Brand
}
if body.Price != "" {
product.Price = body.Price
}
database.DB.Save(&product)
}
есть ли какой-то метод у gorm чтобы обновить именно то что не является пустой строкой, а не писать такую конструкцию из if?