package controllers
import (
"bubble/daos"
"bubble/models"
"net/http"
"github.com/gin-gonic/gin"
)
// 就是返回执行的函数,类似于SpringBoot+mybatis的controller层
func IndexHandler(c *gin.Context) {
//在router包中会使用查找html所在的方式
c.HTML(http.StatusOK, "index.html", nil)
}
// 创建记录
func CreatTodo(c *gin.Context) {
var todo models.Todo
//与前端传来的的数据进行绑定
err := c.BindJSON(&todo)
if err != nil {
return
}
if err = daos.CTodo(&todo); err != nil {
c.JSON(http.StatusBadRequest, gin.H{
"error": err,
})
} else {
//规定好的返回什么 这应该是一个事情,设计的是否规定好,这里是返回该信息 可以测试以下
c.JSON(http.StatusOK, gin.H{
"code": 200,
"msg": "success",
"data": todo,
})
}
}
// 删除记录
func DeleteTodo(c *gin.Context) {
//从路径中获取id的值然后实行删除
id := c.Param("id")
if err := daos.DTodo(id); err != nil {
c.JSON(http.StatusBadRequest, gin.H{
"error": err,
})
} else {
c.JSON(http.StatusOK, gin.H{
//这里为什么会返回这个,要斟酌一下
id: "delete",
})
}
}
// 修改记录的状态
func UpdateTodo(c *gin.Context) {
//也是根据路径传递的id来进行筛选要更改的值
id := c.Param("id")
todo, err := daos.UTodo(id)
if err != nil {
c.JSON(http.StatusBadRequest, gin.H{
"error": err.Error(),
})
}
//绑定前端传来的数据
err = c.BindJSON(&todo)
if err != nil {
c.JSON(http.StatusBadRequest, gin.H{
"error": err.Error(),
})
}
err = daos.STodo(todo)
if err != nil {
c.JSON(400, gin.H{
"error": err.Error(),
})
}
}
// 得到所有数据
func GetTodo(c *gin.Context) {
if todos, err := daos.GTodo(); err != nil {
c.JSON(http.StatusBadRequest, err.Error())
} else {
c.JSON(http.StatusOK, todos)
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
内容概要: Bubble 是一个使用 Gin 框架和 Gorm ORM 库开发的练手小项目,旨在帮助开发者熟悉 Gin 和 Gorm 的使用,并实践常见的 Web 开发模式和技术栈。Bubble 是一个简单的网页,用户可以发布任务、浏览任务、更新状态等操作。 适用人群: 具备一定的 Go 语言基础知识和 Web 开发经验的开发者 对 Gin 框架和 Gorm ORM 库感兴趣,并希望通过实践项目来加深理解和掌握这些技术 使用场景及目标: 练习使用 Gin 框架和 Gorm ORM 库进行 Web 开发 掌握 Gin 框架的路由、中间件和请求处理等基本概念和用法 熟悉 Gorm ORM 库的模型定义、数据库迁移、查询和关联操作等功能 实现用户发布任务、浏览任务、更新状态等基本功能 其他说明: 本项目提供了基本的功能骨架,开发者可以在此基础上进行扩展和定制,添加更多的功能和特性。 项目代码遵循良好的代码组织和规范,包括模块化设计、错误处理、日志记录等。 在开发过程中,建议参考 Gin 和 Gorm 的官方文档,并查阅相关的教程和示例代码,以便更好地理解和运用这些技术。
资源推荐
资源详情
资源评论














收起资源包目录

































共 21 条
- 1
资源评论


法耶会输出
- 粉丝: 13
- 资源: 1
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 网络建设与运维模拟器2
- 04-腾讯云ES在日志和搜索的场景化能力建设-腾讯云师文博-最终版 12.02 2023 Beijing
- 03-Vega 或 Vega-Lite二次开发 Kibana 接口可视化 12.02 2023 Beijing
- 02-Elasticsearch 索引优化-小红书刘显鹏 12.02 2023 Beijing
- HikariCP-5.1.0.jar
- 01-ES-QL for Community - Chinese 12.03 2023 Beijing
- 实验1-1.ms14
- 突发2fsk,通过卷积分析其中的起始时间
- ESETNOD32防病毒软件
- Scratch AI 赛车游戏:糟糕的赛车手
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈



安全验证
文档复制为VIP权益,开通VIP直接复制
