当前位置: > > > > 如何在restful中设计bool查询
如何在restful中设计bool查询
来源:stackoverflow
2024-04-30 15:42:34
0浏览
收藏
小伙伴们有没有觉得学习Golang很有意思?有意思就对了!今天就给大家带来《如何在restful中设计bool查询》,以下内容将会涉及到,若是在学习中对其中部分知识点有疑问,或许看了本文就能帮到你!
问题内容
我有一个这样的用户模型:
type user struct {
name string
enabled bool // this is an bool field
online bool // this is an bool field
// other field ...
}
创建用户时:
post /api/v1/users
{
"name": "hello",
"enabled": true // option, default is true
}
创建请求模型是:
type createuserreq struct {
name string
enabled bool // but golang default value is false
}
当列出用户时:
get /api/v1/users // list all users, but golang default value is false get /api/v1/users?enabled=true // list enabled users get /api/v1/users?enabled=false // list disabled users
列表请求模型是:
type ListUserReq struct {
Status bool // but golang default value is false
}
解决这个问题的常用方法是什么?
解决方案
没有初始值的变量被赋予零值。 对于布尔类型零值是 false。
您可以使用 bool 的指针,其零值为 nil。然后您可以检查 enabled 是否设置。并在处理程序中检查 enabled 是否为 nil,然后将默认情况设置为 true。
type CreateUserReq struct {
Name string
Enabled *bool
}
文中关于的知识介绍,希望对你的学习有所帮助!若是受益匪浅,那就动动鼠标收藏这篇《如何在restful中设计bool查询》文章吧,也可关注米云公众号了解相关技术文章。
