如果你需要解释一下Revel框架REST API的实现和使用,这篇文章将为你提供所有。这篇文章还将讨论使用Golang检索CockroachDB中的数据,使用Golang删除CockroachDB的记录等等。
Model-View-Controller中的模型
在这里,在模型中,它被定义为一个地方,所有的数据库处理都发生在这里。
检索记录--模型
使用Go Script可以对CockroachDB的数据库进行各种操作,你可以使用Golang创建CockroachDB的记录,也可以使用Golang简单地更新记录。你甚至可以选择删除或检索数据库中的记录。
模型目录中的第一个函数帮助检索CockroachDB数据库表中的所有记录(tblrestraunts:)
这里的代码,它持续了一段时间。为了理解同样的工作方式,可以多看看。
- 首先,包模型。它说明了包的名称。
- 然后,导入将有助于进行必要的依赖关系的导入。
- 结构 将是字段集合,继续与数据库中存在的字段相匹配。
- func AllResto() 有助于检索tbl餐厅表中的记录。
一些最好的Golang框架2022公司会使用db.Query("Select * From tbl restaurants") ,然后将结果分配到行中。在这之后,他们会检查是否有任何形式的错误发生,然后返回 "内部服务器错误 "的状态,如果同样看起来有必要的话。
Defer rows.Close()用于确保在开发人员完成数据库连接后,给定的资源被取消分配。
之后,餐厅将被追加到变量 "restos "中,restos := make([ ]Restaurant, 0)。
- 最后,使用rows.Next()对行进行迭代,并通过SELECT操作返回结果。
Model-View-Controller视图
考虑到代码的角度,在上面提到的脚本中并没有太多的事情发生。它只是使用HTML标签和流行的编程语言组成的。
在这里,"视图 "意味着代表Golang相关的文件和各自结构中的数据。在这里,人们将能够看到Golang的组件 ,它们被包围在大括号中,"{{}}"。"... "代表结构值,这些结构值是可变的,并从前面的部分传递过来,这就是为什么程序员能够看到{{.Id}}、{{.Name}}、{{.Phone}}、{{.Email}}、{{.Stars}}和{{.Category}}的引用,这与前面部分创建的餐厅{ }结构相匹配。
func main()
接下来,最好尝试使用func main( )来运行一个应用程序。为了做到这一点,开发人员需要在项目根目录下创建main.go文件,然后添加给定的代码。
接下来,检查func main( )内发生了什么。
- 在这里,代码以包main开始,它告诉编译器,给定的脚本将编译可执行程序,这样同样可以通过包来运行。
- 接下来是import语句,它们导入所需的依赖项。在这里,"webGo/controllers "被导入,这就是控制器。
- 一个字符串和函数是由*http.Handlefunc()*取的,函数在controllers目录内。这只是意味着,当程序将根据请求收到带有"/restaurants "值的字符串时,controllers.Index函数将被调用。
- 最后,当收到URL中的"/"时,该函数将简单地重定向到controllers.Index。
好了,现在已经做了不少编码工作,基本脚本都在项目目录中。所以,现在是运行网络应用程序的时候了,看看是否一切按预期进行。
这里需要运行可执行程序,func main(),在终端使用以下命令(确保在运行该命令前导航到项目目录)。

现在终端上会显示一个确认信息--"连接到数据库"。
现在你可以简单地使用浏览器导航到索引文件,使用的是URL。"localhost:9090/" 或 "localhost:909/restaurants" 。
上述的任何一个都会调用 "index.gohtml "模板。
你也将能够看到通过表格呈现在浏览器上的tbl餐厅中的所有记录。这个URL,它应该看起来很熟悉,因为它是在func main( ) 中声明的。
最后一句话
要开始使用CockroachDB和Rest API,需要很多的过程,而且必须注意使用URL发送的参数。在上面介绍的web应用程序的例子中,使用web应用程序作为模型,已经取得了很大的进展。那么,它也可以用来编写代码,然后使用Golang从CockroachDB中删除,甚至可以使用Golang从CockroachDB中检索数据。
