自从学了 Go 之后对 ORM 就越来越无感了

2022-09-06 10:08:02 +08:00
 maotao456

第一门开发语言是 PHP ,尤为喜欢 Laravel 里面的 ORM , 后来学了 Go ( sqlx ),反而觉得 ORM 这种东西没啥用处,还不如手写 SQL 来得快和直观。

现在写回 PHP ,都是直接 PDO 了。

7078 次点击
所在节点    问与答
41 条回复
so1n
2022-09-06 10:14:02 +08:00
写了几年一直不习惯 ORM
wangkun025
2022-09-06 10:14:52 +08:00
写 Ruby 就会觉得 ORM 爽了。
amirobotics
2022-09-06 10:15:43 +08:00
十字螺丝能够被扁平螺丝起子开启,但扁平螺丝不能被十字螺丝起子开启。

就是一个工具,能快速完成任务才是真理。
lululau
2022-09-06 10:18:33 +08:00
最烦“就是个工具”这句话了,什么东西不是工具,都是工具咋不用汇编写呢
hefish
2022-09-06 10:19:11 +08:00
我怎么觉着 EloquentORM 挺爽的,是我碰到的最合适的 PHP 的 ORM 了。
主要是以对象的方式存取数据方便,如果只是取部分字段之类的,那确实 PDO 更直接,省事。
micean
2022-09-06 10:21:21 +08:00
orm 很适合写后台查询
charlie21
2022-09-06 10:26:43 +08:00
orm 是方便使用不同数据库 比如 开发环境数据库 sqlite 生产环境用 mysql 这个时候有 orm 最简单 抹平 /让人不必再关心各个数据库差异
wonderfulcxm
2022-09-06 10:30:13 +08:00
我一直觉得手写 SQL 不麻烦,但很多框架都用 orm ,那就用呗。
lp7631010
2022-09-06 10:31:38 +08:00
发明锄头 未必还用石块和木棍去刨土 刨的有感觉些?
daimubai
2022-09-06 10:34:15 +08:00
没有做过数据报表吗?十几个表一起查的那种
wakaka
2022-09-06 10:46:16 +08:00
Go 语言写 CRUD 过于繁琐无趣
www5070504
2022-09-06 10:52:28 +08:00
go 写 web 略显无趣 写 curd 更无聊
Dogtler
2022-09-06 10:58:53 +08:00
Go 写 CURD 是真不如 PHP 。
得找点并发场景,否则算不上熟练掌握 Go
ipwx
2022-09-06 11:03:52 +08:00
ummm 现代语言的 ORM 不都能联通 API 请求解析 + 类型校验嘛。。。

结构体一复杂,手动处理这些都很麻烦。
ihipop
2022-09-06 11:07:27 +08:00
这是因为 go (部分是语言层面限制)没有和 eloquentorm 一样好用的 ORM
我也写 go ,但是没有冒犯的意思,这就好像和太监没有了性器官一样,说还是清心寡欲对身体好啊一样的。
tianyou666shen
2022-09-06 11:21:13 +08:00
只要不写一条占满整个屏幕的 sql 一把梭都是挺快的
lambdaq
2022-09-06 11:21:19 +08:00
觉得 CURD 没用的,肯定是业务不够复杂

比如传入参数 a 要生根据值成不同的语句,传入 b 要根据 a 的值联动生成不同的查询。

拼 sql 不拼死你。一堆 if else 。。。
fiypig
2022-09-06 11:24:49 +08:00
我用 GORM 也够用啊
QlanQ
2022-09-06 12:48:49 +08:00
那只是因为 go 的 orm 不好用罢了,orm 如果需要增加 软删除,只需要 在 模型里面加一个定义就好了,手撸的,你所有的相关 sql 都要检查一遍,临时增加事件也很好用
hwv2e
2022-09-06 13:44:20 +08:00
go 里面 gorm 的确很难用。
但 go 也有好用的 orm ,ent 了解一下,Facebook 开源的,超级好用,任何 sql 语句都不用写(连条件也不需要写 sql )。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/877991

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX