小编lyo*_*ssp的帖子

在Golang中处理可选的布尔值

我无法理解如何解决我目前在自己的应用程序中遇到的问题.

想象一下这个构建模型传入请求的结构示例和一个将该请求中的字段放入数据库的函数.

type NewBooleanRequest struct {
    RequiredString string `json:"requiredString"`
    OptionalBoolean bool `json:"maybeBoolean"`
}

func LogBooleanRequest(req NewBooleanRequest, db *sql.DB) {
    db.Exec("INSERT INTO log (booleanValue, stringValue) VALUES ($1, $2)", req.OptionalBoolean, req.RequiredString)
}
Run Code Online (Sandbox Code Playgroud)

现在这显然可行,如果我知道我将为我的请求模型的所有字段赋值,但这不是现实中的常见要求.人们通常如何为bool值赋予"可选"语义模型,因为它bool具有在基本上所有上下文中都有效的零值?

go

4
推荐指数
1
解决办法
2421
查看次数

标签 统计

go ×1