On updates
gorm не обновляет логический тип до false
. По умолчанию он обновляется до true
, но при попытке обновить до false
не изменяется. Я также не вижу никаких ошибок. В чем может быть проблема?
type Attendee struct {
ID uint `gorm:"primary_key" gorm:"AUTO_INCREMENT" json:"id,omitempty" mapstructure:"id" csv:"ID"`
Email string `json:"email,omitempty" mapstructure:"email" csv:"Email,required"`
ShowDirectory bool `json:"show_directory,omitempty" gorm:"default:true" mapstructure:"show_directory" csv:"-"`
}
var attendee Attendee
// JSON.unmarshal lines here for the &attendee
if err := service.DB.Model(&attendee).Updates(Attendee{
Email: attendee.Email,
ShowDirectory: false
}).Error; err != nil {
return Attendee{}, err
}
Альтернативный раствор:
Это работает, но я обновляю несколько атрибутов. Так что я не могу использовать это.
att := Attendee{ID: 1}
service.DB.Model(&att).Update("ShowDirectory", false)