V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
The Go Programming Language
http://golang.org/
Go Playground
Go Projects
Revel Web Framework
hujianxin
V2EX  ›  Go 编程语言

大家在使用 golang 做开发的时候, ORM 使用的多吗?

  •  
  •   hujianxin · 2017-04-09 10:04:59 +08:00 · 3152 次点击
    这是一个创建于 2778 天前的主题,其中的信息可能已经有所发展或是发生改变。

    是使用自带的 sql 包比较多呢?还是使用 ORM 比较多呢? 如果是 ORM 的话,使用的那一款呢?

    15 条回复    2017-05-05 22:13:15 +08:00
    timothyye
        1
    timothyye  
       2017-04-09 10:22:06 +08:00 via Android
    gorm xorm 都用过
    pubby
        2
    pubby  
       2017-04-09 10:31:48 +08:00
    在用 gorm

    简单的一两个还可以裸写 sql

    对象一多再这样搞就严重影响开发效率了
    Muninn
        3
    Muninn  
       2017-04-09 10:40:20 +08:00 via Android
    要是简单 可以用 gorm 甚至自动建表 ci 的时候都不用初始化库了。

    其实和项目大小没关系,只要不依赖数据库做查询和复杂运算,都可以用 gorm 。
    AnnatarHe
        4
    AnnatarHe  
       2017-04-09 11:08:02 +08:00
    Gorm 还可以,但是我用的时候总感觉文档不是很给力。
    正如 @pubby 所言,简单的可以手写,复杂的就尽量不要手写了。比如多表查询各种数据库连表万一一个脑袋不清醒就写错了,而且也没有智能提示。
    fhefh
        5
    fhefh  
       2017-04-09 15:50:48 +08:00
    marked
    reus
        6
    reus  
       2017-04-09 18:03:54 +08:00
    不用 ORM 。现在的数据库都支持 json 类型了,懒得写 SQL ,就直接作为 json 插入呗,还可以建索引之类的。
    fuxiaohei
        7
    fuxiaohei  
       2017-04-09 21:11:17 +08:00
    http://jmoiron.github.io/sqlx/

    直接写 SQL ,找个库帮你映射结果集到结构体就行了
    jarlyyn
        8
    jarlyyn  
       2017-04-09 21:27:30 +08:00 via Android
    至今没用过

    SQL. 或 SQLX
    hujianxin
        9
    hujianxin  
    OP
       2017-04-10 09:41:35 +08:00   ❤️ 1
    @fuxiaohei
    @jarlyyn
    SQLX 这个看着不错,谢谢!
    hujianxin
        10
    hujianxin  
    OP
       2017-04-10 09:42:13 +08:00
    @timothyye
    @pubby
    @Muninn
    @AnnatarHe
    谢谢,我用过 gorm , xorm 看着不错,文档很棒啊!
    hujianxin
        11
    hujianxin  
    OP
       2017-04-10 09:42:41 +08:00
    都是国人写的,太棒了!!!
    go 语言太棒了!
    elgoog1970
        12
    elgoog1970  
       2017-04-10 09:56:31 +08:00
    用过 xorm 感觉比 beego 的 orm 好些。
    bigpigeon
        13
    bigpigeon  
       2017-04-10 10:22:27 +08:00
    我用 gorm ,很方便,类型绑定,指针类型等于可以为空的值,
    使用 Scopes 可以调用自定义的函数,很方便
    有个不足点就是利用反射提供嵌套类型的方法,比如我有个类型里面有指向其他类的指针,要拿就比较麻烦
    ryanking8215
        14
    ryanking8215  
       2017-04-10 14:15:30 +08:00
    https://github.com/elgris/golang-sql-builder-benchmark
    可以考虑一下 sql builder, 不用 orm
    fhefh
        15
    fhefh  
       2017-05-05 22:13:15 +08:00
    先收藏了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2870 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 07:47 · PVG 15:47 · LAX 23:47 · JFK 02:47
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.