gin中模型中增删改查+搜索分页

模型里代码:

package models

import (
   db "awesomeProject/databases"
   "fmt"
   _ "gopkg.in/gin-gonic/gin.v1/json"
)

type User struct {
   ID int `json:"id"`
   Name string `json:"name"`
   Gender int `json:"gender"`
   Age int `json:"age"`
}
//增加
func (user *User) AddUser() bool {
   var rs, err = db.SqlDB.Exec("insert into user (name,gender,age)value (?,?,?)", user.Name, user.Gender, user.Age)
   if err!=nil{
      return false
   }
   id,err:=rs.LastInsertId()
   fmt.Println(id)
   if err!=nil{
      return false
   }else{
      return true
   }
}
//修改
func (user *User) EditUser() bool  {
   rs,err:=db.SqlDB.Exec("update user set name=?,gender=?,age=? where id=?",user.Name,user.Gender,user.Age,user.ID)
   if err!=nil{
      return  false
   }
   id,err:=rs.RowsAffected()
   if err!=nil{
      return  false
   }else {
      fmt.Println(id)
      return  true
   }
}
//删除
func DeleteUser(Id int) bool {
   rs,err:=db.SqlDB.Exec("Delete from user where id=?",Id)
   if err!=nil{
      return  false
   }
   id,err:=rs.RowsAffected()
   if err!=nil{
      return false
   }else {
      fmt.Println(id)
      return true
   }
}
//列表
func GetUserList(pageno,pagesi
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
好的,以下是使用 Gin 框架编写一个简单的增删改查的示例代码: ```go package main import ( "net/http" "strconv" "github.com/gin-gonic/gin" ) type User struct { ID int `json:"id"` Name string `json:"name"` Age int `json:"age"` } var userList []User func main() { r := gin.Default() // 查询用户列表 r.GET("/users", func(c *gin.Context) { c.JSON(http.StatusOK, gin.H{ "data": userList, }) }) // 根据 ID 查询用户 r.GET("/users/:id", func(c *gin.Context) { id, err := strconv.Atoi(c.Param("id")) if err != nil { c.JSON(http.StatusBadRequest, gin.H{ "message": "Invalid user ID", }) return } for _, user := range userList { if user.ID == id { c.JSON(http.StatusOK, gin.H{ "data": user, }) return } } c.JSON(http.StatusNotFound, gin.H{ "message": "User not found", }) }) // 新增用户 r.POST("/users", func(c *gin.Context) { var user User if err := c.ShouldBindJSON(&user); err != nil { c.JSON(http.StatusBadRequest, gin.H{ "message": "Invalid user data", }) return } user.ID = len(userList) + 1 userList = append(userList, user) c.JSON(http.StatusOK, gin.H{ "message": "User created successfully", "data": user, }) }) // 更新用户 r.PUT("/users/:id", func(c *gin.Context) { id, err := strconv.Atoi(c.Param("id")) if err != nil { c.JSON(http.StatusBadRequest, gin.H{ "message": "Invalid user ID", }) return } var user User if err := c.ShouldBindJSON(&user); err != nil { c.JSON(http.StatusBadRequest, gin.H{ "message": "Invalid user data", }) return } for i, oldUser := range userList { if oldUser.ID == id { user.ID = id userList[i] = user c.JSON(http.StatusOK, gin.H{ "message": "User updated successfully", "data": user, }) return } } c.JSON(http.StatusNotFound, gin.H{ "message": "User not found", }) }) // 删除用户 r.DELETE("/users/:id", func(c *gin.Context) { id, err := strconv.Atoi(c.Param("id")) if err != nil { c.JSON(http.StatusBadRequest, gin.H{ "message": "Invalid user ID", }) return } for i, user := range userList { if user.ID == id { userList = append(userList[:i], userList[i+1:]...) c.JSON(http.StatusOK, gin.H{ "message": "User deleted successfully", }) return } } c.JSON(http.StatusNotFound, gin.H{ "message": "User not found", }) }) r.Run() // 启动 HTTP 服务 } ``` 这是一个非常简单的示例,用于演示如何使用 Gin 框架实现增删改查功能。可以通过访问以下 URL 来测试: - 查询用户列表:GET http://localhost:8080/users - 根据 ID 查询用户:GET http://localhost:8080/users/:id - 新增用户:POST http://localhost:8080/users - 更新用户:PUT http://localhost:8080/users/:id - 删除用户:DELETE http://localhost:8080/users/:id 其,`:id` 代表用户的 ID,需要替换成实际的用户 ID。在请求,需要提供 JSON 格式的请求体来传递用户数据。可以使用 Postman 等工具来测试这些 API。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值