文章转发在专业的 Go 开发者社区,原始链接:https://learnku.com/golang
$GOPATH/src

在一般的 crud 应用中我们需要如下这样的 API :

  1. POST todos/
  2. GET todos/
  3. GET todos/{id}
  4. PUT todos/{id}
  5. DELETE todos/{id}
main
createTodo, fetchAllTodo

现在我们需要配置数据库连接。使用数据库前需要引入 gorm 和 mysql dialects 2个软件包。 如下代码:

mysqlroot12345demo
todoModeltransformedTodoTodoapiupdated_atcreated_at
gorm.ModelIDCreatedAtUpdatedAtDeletedAttodoModel

Gorm 有迁移工具 ,在调用 ‘init’ 函数初始化的时候已经初始化了。当我们运行应用程序时,它将创建一个连接然后进行迁移。



使用 phpmyadmin 可视化工具

你能记得我们前面提到过的五种路由方式吗?现在我们挨个去实现这五种路由方式。

当一个用户用 ‘title 和 completed’ 字段向 ‘api/v1/todos/’ 路径发送一个 PSOT 请求,它将由此路由 ‘v1.POST(「/」,createTodo)‘处理。

接下来让我们继续看一下 createTodo 方法相关的代码书写

ginContextPOSTgormresourceId

接下来让我们实现剩下的方法

fetchAllTodotodosid, title, completedCreatedAtUpdatedAtDeletedAtintbool

到这里基本业务逻辑的代码已经完成,现在让我们试着构建程序并测试它,我将使用Chrome的Postman扩展来进行测试(你可以使用任何REST客户端进行测试,比如curl)。

要构建应用程序,先打开你的终端,进入项目目录,执行如下命令:

main$ ./main8080gindebug8080

要测试API,请先运行 Postman 并依次测试

创建一个todo:



获取todos列表:



获取单个todo:



更新单个todo内容:



删除一个todo:



全部的源代码:

注意:当你使用代码生成时,你必须谨慎操作以下步骤:

select * from todos