大家好,我是码农先森。
安装
使用 composer 进行项目的创建。
composer create-project topthink/think thinkphp_demo
使用 go mod 初始化项目。
go mod init gin_demo
目录
thinkphp_demo 项目目录结构。
thinkphp_demo
├── LICENSE.txt
├── README.md
├── app
├── composer.json
├── composer.lock
├── config
├── extend
├── public
├── route
├── runtime
├── think
├── vendor
└── view
gin_demo 项目目录结构。
gin_demo/
├── app
│ ├── controller
│ └── model
├── config
├── go.mod
├── go.sum
├── main.go
├── route
│ └── app.go
└── view
路由
thinkphp_demo 项目的路由配置。
<?php
use think\facade\Route;Route::get('/info/', 'index/info');
Route::post('/add/', 'index/add');
Route::post('/edit/', 'index/edit');
Route::post('/del/', 'index/del');
gin_demo 项目的路由配置。
package routeimport ("gin_demo/app/controller""github.com/gin-gonic/gin"
)func InitRoute(r *gin.Engine) {r.GET("/info/", controller.InfoHandle())r.POST("/add/", controller.AddHandle())r.POST("/edit/", controller.EditHandle())r.POST("/del/", controller.DelHandle())
}
控制器
thinkphp_demo 项目的控制器。
<?phpnamespace app\controller;use app\BaseController;class Index extends BaseController
{public function info() {// 这里从模型获取数据return;}public function add(){// 这里向模型添加数据return;}public function edit() {// 这里向模型编辑数据return;}public function del(){// 这里从模型删除数据return;}
}
gin_demo 项目的控制器。
package controllerimport "github.com/gin-gonic/gin"func InfoHandle() gin.HandlerFunc {return func(c *gin.Context) {// 这里从模型获取数据}
}func AddHandle() gin.HandlerFunc {return func(c *gin.Context) {// 这里向模型添加数据}
}func EditHandle() gin.HandlerFunc {return func(c *gin.Context) {// 这里向模型编辑数据}
}func DelHandle() gin.HandlerFunc {return func(c *gin.Context) {// 这里从模型删除数据}
}
模型
thinkphp_demo 项目的模型。
<?phpnamespace app\model;use think\Model;class User extends Model
{}
gin_demo 项目的模型。
package modeltype User struct {ID int `json:"id"`Name string `json:"name"`Age string `json:"age"`Phone string `json:"phone"`
}// 设置表名
func (User) TableName() string {return "user"
}
总结
虽然语言和框架都不同,但是编程的思想都是一样,同样采用的是 MVC 的编程风格。从框架入手实现一个 CURD 案例,也可以很好的熟悉 Go 语言的编程风格及流程,为后续更深入的学习打下基础。
推荐
PHP 语言中的函数是如此强大、丰富、便利,PHP 程序员转到 Go 语言来,发现很多方法都需要自己封装,很不适应。因此给大家推荐一个很好网站,可以直接通过 PHP 语言中的函数找到对应在 Go 语言中的函数,这简直是转 Go 语言 PHP 程序员的福音,网站地址:https://www.php2golang.com/
欢迎关注、分享、点赞、收藏、在看,我是码农先森。