Go有没有像Laravel一样优雅的框架,或者像Laravel Eloquent 的ORM?
用惯了php,感觉Laravel太方便了,
Go的几个框架太单一,要什么没什么
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
用惯了php,感觉Laravel太方便了,
Go的几个框架太单一,要什么没什么
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(9)
go不需要用框架
go就不需要用框架,组织好项目结构就可以了,用框架很笨重,不适合go的风格
写web还是php最合适
Go目前的特点就是简单粗暴,思路都不一样,Laravel那套是java里来的,你要是喜欢这个风格,你应该选spring全家桶或者nodejs里的nest.js
可以看看 gorose : https://github.com/gohouse/go... ,
模仿 eloquent 写的go版本的orm
GoRose(go orm), a mini database ORM for golang, which inspired by the famous php framwork laravle's eloquent. It will be friendly for php developer and python or ruby developer. Currently provides five major database drivers: mysql,sqlite3,postgres,oracle,mssql.
我目前使用 gorose orm + gin框架 + jwt认证 + vue 开发
@TechLee 可以考虑下GoFrame:https://goframe.org/ 比较适合你的想法,我也是这样一路过来的。
GF(Go Frame)
是一款模块化、松耦合、生产级、实战化的Go应用开发框架。提供了常用的核心开发组件,如:缓存、日志、文件、时间、队列、数组、集合、字符串、定时器、命令行、文件锁、内存锁、对象池、连接池、数据校验、数据编码、文件监控、定时任务、数据库ORM、TCP/UDP组件、进程管理/通信、 并发安全容器等等。并提供了Web服务开发的系列核心组件,如:Router、Cookie、Session、服务注册、配置管理、模板引擎等等,支持热重启、热更新、多域名、多端口、多服务、HTTPS、Rewrite等特性。大而全、大而精。
可以尝试beego,一个大而全的golang框架,内置orm。session,cache都是开箱即用的。
优雅是个偏主观的口味,很难说你的优雅和我的优雅是一回事。
router层面,我觉得golang的很多框架都还蛮好,比如我就比较喜欢用chi这个框架,路由和中间件都有。
ORM这块,由于golang的OOP风格以及泛型的缺乏,的确没有类似风格的ORM实现,也许golang 2.0添加了泛型之后会有改观。社区比较流行的gorm也不符合我的口味,我目前也就是靠sqlx才能维持生活这个样子。
换语言,跨生态环境就这样,入乡随俗吧。
UPDATE:
有时候换了语言之后,老是想把原来习惯的那套东西弄到新语言这边来,但是这种做法是有坏处的,就是你可能最后搞出了一堆php味的golang代码而已。
越是抓住原先的习惯不放,就可能越难体会到golang的精髓。所以我经常会建议我那些转到golang的同事先试试把原先的那些东西忘掉,原汁原味的golang写多一点再说。
不破不立,有舍有得。
参考Laravel的一个框架:
ThinkGo:https://github.com/forgoer/th...
php转go,还有原来的味道,还是原来的配方。。。