实战.md

golang 正则

r.ParseForm()
username := r.Form.Get("username")
CleanMap := make(map[string]interface{}, 0)
if ok, _ := regexp.MatchString("^[a-zA-Z0-9]+$", username); ok {
    CleanMap["username"] = username
}

新增数据

// @router /addadmin/ [post]
func (this *AdminController)AddAdmin()  {
    var AddAdmin  map[string]interface{}
    data := this.Ctx.Input.RequestBody
    json.Unmarshal(data, &AddAdmin)
    user := models.Users{}
    user.InsertAdmin(AddAdmin)
    fmt.Println(AddAdmin["Data"])
    this.Ctx.WriteString("abc")
}

func (this *Users)InsertAdmin(param map[string]interface{}) int64 {
        tempparam := param["Data"]
        tempparam2:=tempparam.(map[string]interface{}) //interface 数据转换
        o := orm.NewOrm()
        User := []string{
            tempparam2["Username"].(string),//转换成字符串
            tempparam2["Password"].(string),
            tempparam2["Email"].(string),
        }
        re,err :=o.Raw("INSERT INTO user (user_name,user_email,user_pwd) VALUES (?,?,?)",User).Exec()//插入数据执行操作

        if err != nil{
            return 0
        }else{
            result,_:=re.LastInsertId()//最后插入的id  RowsAffected为条数
            return  result
        }
    }


type Users struct {
    model
    UserId int  `orm:"pk"`
    UserName string


}

func (this *Users)GetUserById()  []orm.Params{

    o := orm.NewOrm()
    var user []orm.Params
    num,err := o.Raw("select * from user limit 2").Values(&user)
    fmt.Println(num)
    fmt.Println(err)
    for k,v:=range user{
        fmt.Println(k,v["user_id"] , v["user_name"])
    }
    return user
}

func (this *Users)InsertAdmin(param map[string]interface{}) int64 {
    tempparam := param["Data"]
    tempparam2:=tempparam.(map[string]interface{}) //interface 数据转换
    o := orm.NewOrm()
    User := []string{
        tempparam2["Username"].(string),//转换成字符串
        tempparam2["Password"].(string),
        tempparam2["Email"].(string),
    }
    re,err :=o.Raw("INSERT INTO user (user_name,user_pwd,user_email) VALUES (?,?,?)",User).Exec()//插入数据执行操作

    if err != nil{
        return 0
    }else{
        result,_:=re.LastInsertId()//最后插入的id  RowsAffected为条数
        return  result
    }
}

func (this *Users)DelAdmin(param map[string]interface{}) bool {
    tempparam := param["Data"]
    tempparam2:=tempparam.(map[string]interface{}) //interface 数据转换
    o := orm.NewOrm()
    delUser:=[]string{
        tempparam2["Username"].(string),
    }
    _,err :=o.Raw("DELETE FROM user WHERE user_name=?",delUser).Exec()//插入数据执行操作
    if err != nil{
        return false
    }else{
        return  true
    }
}



func (this *Users)UpdateAdmin(param map[string]interface{}) int64 {
    tempparam := param["Data"]
    tempparam2:=tempparam.(map[string]interface{}) //interface 数据转换
    o := orm.NewOrm()
    upUser:=[]string{
        tempparam2["Username"].(string),
        tempparam2["Password"].(string),
        tempparam2["Email"].(string),
        tempparam2["Username"].(string),
    }
    re,err :=o.Raw("UPDATE user SET user_name=?,user_pwd=? ,user_email=?  WHERE user_name=?",upUser).Exec()//插入数据执行操作
    if err != nil{
        return 0
    }else{
        result,_:=re.LastInsertId()
        return  result
    }
}


func (this *Users)GetAdminlist(param map[string]interface{}) map[string]interface{} {
    tempparam := param["Data"]
    tempparam2:=tempparam.(map[string]interface{}) //interface 数据转换
    o := orm.NewOrm()
    var result []orm.Params
    var totalpages int
    o.Raw("select count(*) from user").QueryRow(&totalpages)
    fmt.Println(tempparam2)
    res := make(map[string]interface{})
    num,_ :=o.Raw("select * from user").Values(&result)//插入数据执行操作
    res["num"] = num
    res["result"] = result
    res["totalpages"] = totalpages
    return  res

}
Last Updated:
Contributors: 刘荣杰