Gin 增删改查
1 查简单查询
package admin
import (
"awesomeProject/gin/db" // 导入连接对象
"awesomeProject/gin/db/models" // 导入操作的数据表结构体
"github.com/gin-gonic/gin"
"net/http"
)
func AdminIndex(c *gin.Context) {
c.String(200, "后台首页")
}
func AdminUser(c *gin.Context) {
// 查询数据库
// 创建一个User对象的切片,用来存放查询出来的数据
userList := []models.User{}
// 会将查询到的数据直接放到切片中去
db.DB.Find(&userlist)
// 查询age大于20的用户
userList := []models.User{}
db.DB.Where("age>20").Find(&userList)
c.JSON(http.StatusOK, gin.H{
"result": userList,
})
}
func AdminUserAdd(c *gin.Context) {
c.String(200, "增加用户")
}
func AdminUserEdit(c *gin.Context) {
c.String(200, "修改用户")
}
func AdminUserDelete(c *gin.Context) {
c.String(http.StatusOK, "删除成功")
}
2 增
func AdminUserAdd(c *gin.Context) {
user := models.User{
Username: "aaa",
Age: 22,
Email: "123456@163.com",
AddTime: 100001111,
}
db.DB.Create(&user)
c.JSON(http.StatusOK, gin.H{
"mes": "增加成功",
"data": user,
})
}
3 修改
func AdminUserEdit(c *gin.Context) {
// 查询id等于4的数据
user := models.User{Id: 4}
db.DB.Find(&user)
// 修改 可以全部字段
user.Username = "12312321312"
user.Email = "111111.@qq.com"
// 最后保存
db.DB.Save(&user)
c.String(200, "修改用户")
// 修改单列
user := models.User{}
db.DB.Model(&user).Where("id = ?", 3).Update("username", "hhhhh")
c.String(200, "修改用户")
// 修改多个列
user := models.User{}
db.DB.Model(&user).Where("id = ?", 1).Updates(models.User{Username: "2312312", Age: 100})
db.DB.Model(&user).Where("id = ?", 1).Updates(map[string]interface{}{"Username": "2312312", "Age": 100})
c.String(200, "修改用户")
}
4 删除
func AdminUserDelete(c *gin.Context) {
// 删除id为5的数据
user := models.User{Id: 5}
db.DB.Delete(&user)
// 删除用户名为2的数据
user := models.User{}
db.DB.Where("username = ?", "2").Delete(&user)
c.String(http.StatusOK, "删除成功")
}