如果我手动将 clientactive 布尔值设置为 false,我可以成功将其转换为 true。但如果为 true,则不会设置为 false。
我正在使用 gofiber 和 gorm,模型/client.go,处理程序/clienthandler.go,所有其他行更新都没有问题。唯一的问题是 clientactive 布尔值。,完整代码可在 https://github.com/simpleittools/assetapi 获取,我已确认数据是以布尔值形式发送的。我在数据库输入之前和之后都运行了 fmt.prtintln(client),它确实正确显示为 false。,我在此过程中没有收到任何错误。,gorm 默认值文档说:,对于定义默认值的字段,任何零值(例如 0、”、false)都不会保存到数据库中,您可能需要使用指针类型或 scanner/valuer 来避免这种情况,通过将字段类型更改为
*bool
进行修复:,