【Go语言实战】(3) Gin + Gorm 简单备忘录 | 含接口文档

简介: 目录Todo List 备忘录接口文档项目主要功能介绍项目部分代码介绍项目主要依赖:项目结构简要说明项目运行最后

目录

Todo List 备忘录

接口文档

项目主要功能介绍

项目部分代码介绍

项目主要依赖:

项目结构

简要说明

项目运行

最后

Todo List 备忘录



此项目使用Gin+Gorm ,基于RESTful API实现的一个备忘录。


规范是非常重要的,此项目非常适合小白入门学习web开发


Github开源链接


接口文档

Todo List 接口文档


密码:0000


image.png


项目主要功能介绍

用户注册登录 ( jwt-go鉴权 )

新增 / 删除 / 修改 / 查询 备忘录

存储每条备忘录的浏览次数view

分页功能

项目部分代码介绍

路由

//任务操作
  authed.GET("tasks", api.ListTasks)
  authed.POST("task", api.CreateTask)
  authed.GET("task/:id", api.ShowTask)
  authed.DELETE("task/:id", api.DeleteTask)
  authed.PUT("task/:id", api.UpdateTask)
  authed.POST("search",api.SearchTasks)


服务

type ShowTaskService struct {
}
func (service *ShowTaskService) Show(id string) serializer.Response
type DeleteTaskService struct {
}
func (service *DeleteTaskService) Delete(id string) serializer.Response
type UpdateTaskService struct {
  ID            uint   `form:"id" json:"id"`
  Title         string `form:"title" json:"title" binding:"required,min=2,max=100"`
  Content       string `form:"content" json:"content" binding:"max=1000"`
  Status     int    `form:"status" json:"status"`   //0 待办   1已完成
}
func (service *UpdateTaskService) Update(id string) serializer.Response
type SearchTaskService struct {
  Info string `form:"info" json:"info"`
}
func (service *SearchTaskService) Search() serializer.Response


项目主要依赖:

Golang V1.15


Gin

Gorm

mysql

redis

ini

jwt-go

项目结构

TodoList/
├── api
├── cache
├── conf
├── middleware
├── model
├── pkg
│  ├── e
│  ├── logging
│  ├── util
├── routes
├── serializer
└── service


api : 用于定义接口函数

cache : 放置redis缓存

conf : 用于存储配置文件

middleware : 应用中间件

model : 应用数据库模型

pkg / e : 封装错误码

pkg / logging : 日志打印

pkg / util : 工具函数

routes : 路由逻辑处理

serializer : 将数据序列化为 json 的函数

service : 接口函数的实现

简要说明

mysql是存储主要数据

redis用来存储备忘录的浏览次数

项目运行

本项目使用Go Mod管理依赖。


下载依赖


go mod tidy


运行


go run main.go



相关文章
|
2天前
|
JavaScript 前端开发 Java
Go语言入门【java->go】
Go语言入门【java->go】
13 2
|
3天前
|
IDE Linux Go
|
3天前
|
Go 开发工具
Go 语言开发工具
Go 语言开发工具
13 3
|
3天前
|
NoSQL 安全 Go
Go 语言 mongox 库:简化操作、安全、高效、可扩展、BSON 构建
go mongox 是一个基于泛型的库,扩展了 MongoDB 的官方库。通过泛型技术,它实现了结构体与 MongoDB 集合的绑定,旨在提供类型安全和简化的数据操作。 go mongox 还引入链式调用,让文档操作更流畅,并且提供了丰富的 BSON 构建器和内置函数,简化了 BSON 数据的构建。 此外,它还支持插件化编程和内置多种钩子函数,为数据库操作前后的自定义逻辑提供灵活性,增强了应用的可扩展性和可维护性。
38 6
|
4天前
|
存储 Go iOS开发
Go 语言接口
Go 语言接口
14 2
|
4天前
|
编译器 Go
Go 语言类型转换
Go 语言类型转换
15 3
|
4天前
|
Go 开发者
Go 语言递归函数
Go 语言递归函数
13 0
|
4天前
|
Go 定位技术 索引
Go 语言Map(集合)
Go 语言Map(集合)
10 0
|
4天前
|
Go 索引
Go 语言范围(Range)
Go 语言范围(Range)
8 0
|
8天前
|
Go 索引
Go 语言切片(Slice)
Go 语言切片(Slice)
15 1