go_helper

module
v1.2.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 30, 2023 License: MIT

README

go_helper

是一个对go 的 gorm 升级版的插件 将where条件直接绑定 struct 的tag中 目前支持

 where 查询条件
field 查询的字段
default 默认值

实例

import (
     "github.com/zngue/go_helper"
)
type MemberRequest struct {
 Username          int    `form:"username" field:"username" where:"eq" default:"-1"`
 ID                int    `form:"id" field:"id" where:"lt" default:"0"`
 Nickname          string `form:"nickname" field:"nickname" where:"like" default:""`
 CertificationName string `form:"certification_name" field:"certification_name" where:"like" default:""`
 Usernature        int    `form:"usernature" field:"usernature" where:"eq" default:"-1"`
 Usertype          int    `form:"usertype" field:"usertype" where:"eq" default:"-1"`
 Status            int    `form:"status" field:"status" where:"eq" default:"-1"`
 Stick             int    `form:"stick" field:"stick" where:"gt" default:"-1"`
 IDArr             string `form:"idArr" field:"id" where:"in" default:""`
 WhereOr	map[string]interface{} `form:"where_or"  where:"or"`
}
func main() {
 
 var rep MemberRequest
 //自己绑定自己数据 可以接受数据 也可以自己赋值传递
 ///.........
 //调用实例
 //db gorm.DB 实例
 //rep  结构传入进去 如果传入值等于默认值 不参与where条件运算
 ext=&GormExt{DB:db,I:rep}
 ext.Init()
 
}

struct tag 讲解

field:数据库接查询字段名字 
where:where条件
default:默认值,当传入值等于默认值的时候不参与条件筛选
form:传入值接收值
where条件支持那些
表达式文字说明类型支持
eq 等于 string|int
neq 不等于 string|int
gt 大于 string|int
egt 大于等于 string|int
lt 小于 string|int
elt 小于等于 string|int
null 为空 string|int
not 不为空 string|int
like 模糊查询 string
in 条件in string,多个用逗号分隔
or 或查询 map[string]interface{}

自定义条件

```
```

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL