Bootstrap

Go Web开发基础接口开发与测试

在Model层通过gorm添加CRUD接口

type User struct {
	gorm.Model
	Username string `gorm:"type:varchar(20);not null " json:"username"`
	Password string `gorm:"type:varchar(20);not null" json:"password"`
	Role int `gorm:"type:int" json:"role"`
}

// 查询用户是否存在
func CheckUser(name string) (code int) {
	var users User
	db.Select("id").Where("username = ?",name).First(&users)
	if users.ID > 0{
		return errmsg.ERROR_USERNAME_USED
	}
	return errmsg.SUCCSE
}

// 新增用户
func CreaterUser(data *User)int{
	err := db.Create(&data).Error
	if err != nil{
		return errmsg.ERROR
	}
	return errmsg.SUCCSE
}

在接口处添加接口,并配置路由

func AddUser(c *gin.Context){
	var data model.User
	_ = c.ShouldBindJSON(&data)
	code := model.CheckUser(data.Username)
	if code == errmsg.SUCCSE{
		model.CreaterUser(&data)
	}
	c.JSON(http.StatusOK,gin.H{
		"status":code,
		"data":data,
		"message":errmsg.GetErrMsg(code),
	})
}

使用PostMan工具测试接口

从数据库工具测试数据添加成功

查询用户

// 查询用户列表
func GetUsers(pageSize int,pageNum int) []User{
	var users []User
	err := db.Limit(pageSize).Offset((pageNum-1)*pageSize).Find(&users).Error
	if err !=nil && err != gorm.ErrRecordNotFound{
		return nil
	}
	return users
}

 

本节基于GORM框架对数据库进行CRUD操作,包括对model层的操作和控制层的操作

 

 

 

;