当前位置: > > > > 如何在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查询》文章吧,也可关注公众号了解相关技术文章。