The Go Programming Language
› http://golang.org/
› Go Playground
Go Projects
› Revel Web Framework
defage

golang 的同学现在哪个 ORM 比较成熟靠谱

  •  1
     
  •   defage · Mar 21, 2016 · 4593 views
    This topic created in 3882 days ago, the information mentioned may be changed or developed.

    RT

    符合生产级别的

    如果有多个符合条件的,就按优雅, 漂亮来排个序, 各位都用哪些的。

    打算用 gin 这个 web 框架, 只好这些其他模块都自己凑进去了

    46 replies  •  2016-05-08 12:38:40 +08:00
    yanyuan2046
    yanyuan2046
    Mar 21, 2016
    1
    xorm
    defage
    defage
    OP
    Mar 21, 2016
    2
    gorm 怎么样?
    janxin
    janxin
    Mar 21, 2016 via iPhone
    3
    mysql 用 xorm 挺好的,文档很不错,基本上看下文档就没有什么问题要问了。要说缺点就是数据库 json 格式支持了。
    mongo 就是 mgo ,这个应该没争议了。
    gorm 没用过。
    defage
    defage
    OP
    Mar 21, 2016
    4
    看了下 xorm ,文档不怎么清晰。 也没提 Models 方面的,比较了下 gorm 的文档, 很清楚,只要看看示例基本已经知道怎么用了。 http://jinzhu.me/gorm/models.html#model-definition , model 定义方式也跟 python 系下的很像。
    janxin
    janxin
    Mar 21, 2016
    5
    @defage 你是说定义表结构体方面的话就是这个吧 http://gobook.io/read/github.com/go-xorm/manual-zh-CN/chapter-02/1.mapping.html
    WildCat
    WildCat
    Mar 21, 2016
    6
    gorm 貌似不支持 bulk insert 啊
    janxin
    janxin
    Mar 21, 2016
    7
    xorm 我一般是偷懒用 http://gobook.io/read/github.com/go-xorm/manual-zh-CN/chapter-13/ 自己改了一个,先做表然后直接生成结构体使用。基本上很少手写....
    yougg
    yougg
    Mar 21, 2016
    8
    我这边产品直接用的 beego 的 orm
    defage
    defage
    OP
    Mar 21, 2016
    9
    @WildCat 我表示 bulk 用的情况不多, 写脚本什么的可能更多情况用到写。 gorm 有 batch update 足够了。
    defage
    defage
    OP
    Mar 21, 2016
    10
    @yougg beego 的 orm 还不错, 作者就是照着 django 的 orm 写的, 语法看着很熟悉感
    zts1993
    zts1993
    Mar 21, 2016
    11
    在用 gorm 能接受
    orFish
    orFish
    Mar 21, 2016
    12
    目前用 gorm ,不过要注意下哦,之前好像没有发正式的版本,所以有时候一些改动,类型直接变了。。。

    要注意下- -
    elgoog1970
    elgoog1970
    Mar 21, 2016
    13
    xorm
    defage
    defage
    OP
    Mar 21, 2016
    14
    @orFish 谢谢, 这么坑呢。类型映射不是就那么点类型数量么, 应该不会经常改吧
    orFish
    orFish
    Mar 21, 2016
    15
    @defage
    之前遇到过的是,原来实例化的一个 DB 不是一个指针,后来有次更新了是指针了,然后我那个项目有人就反应编译不过。。。
    我之前用因为没有发正式版所以这些改动也不怪开发, go 的包管理也有锅,没有带版本号。。

    不过如果有发正式版应该是不会有这种改动了。。
    njutree
    njutree
    Mar 21, 2016
    16
    只用了 beego 的 orm 还可以,可以方便的切换数据库驱动和分库,其它的不知道。 beego 的 orm 目前我遇到的问题就是对复合索引不支持。
    missdeer
    missdeer
    Mar 21, 2016
    17
    在用 beego 自带的那个,懒得折腾其他的了
    defage
    defage
    OP
    Mar 21, 2016
    18
    gorm 文档挺不错, 比看中文的 beego 文档还容易理解。
    siteshen
    siteshen
    Mar 21, 2016
    19
    几年前用过 https://upper.io/db Is upper.io/db an ORM? Yes, a very basic one.
    JohnDeng
    JohnDeng
    Mar 21, 2016 via iPhone
    20
    Gin 一年没更新了。项目写了一半全迁过去 Echo 了。楼主保重! BTW : GORM 要多看 issues
    WildCat
    WildCat
    Mar 21, 2016
    21
    楼主给你推荐一篇文章,刚看完,感觉不错: http://engineroom.teamwork.com/go-learn/
    里面就有提到 gorm ,还有对它的看法
    suchj
    suchj
    Mar 21, 2016
    22
    @njutree 你遇到对复合索引不支持的问题是指哪方面不支持呢?
    [beego orm]( http://beego.me/docs/mvc/model/models.md#%E8%87%AA%E5%AE%9A%E4%B9%89%E7%B4%A2%E5%BC%95)
    欢迎给我们提 issue 和建议 :)
    njutree
    njutree
    Mar 21, 2016
    23
    @suchj 不好意思,记错了其实是复合主键

    https://github.com/astaxie/beego/issues/1493
    Comdex
    Comdex
    Mar 21, 2016 via Android
    24
    在用 beego orm 作者一直在维护
    penjianfeng
    penjianfeng
    Mar 21, 2016
    25
    xorm,你值得拥有,另不知道你说的文档清晰是什么才算清晰,我觉得挺好的,不懂得可以自己去翻源码或者写小 demo 试试不就知道了.PS: xorm 作者人很不错,赞一个:-)
    janxin
    janxin
    Mar 21, 2016 via iPhone
    26
    @JohnDeng echo 谨慎使用…尤其 v2
    JohnDeng
    JohnDeng
    Mar 21, 2016 via iPhone
    27
    @janxin Echo 挺好的,有坑至少作者还在...
    jjx
    jjx
    Mar 21, 2016
    28
    没一个真正好用的,如果你拿 python 的 orm 来比的话

    现在勉强在用 gorm
    janxin
    janxin
    Mar 22, 2016
    29
    @JohnDeng v2 现在 API 变化比较快,之前有遇到 delete 获取参数不正确的问题,建议生产别那么快上吧
    其实 v2 我也觉得挺好
    JohnDeng
    JohnDeng
    Mar 22, 2016 via iPhone
    30
    @janxin 很快啦,, Beta 了已经...
    defage
    defage
    OP
    Mar 22, 2016
    31
    @JohnDeng 一年没更新是指新 feature 还是说维护 commit ? 我看他们最近一直有提交
    JohnDeng
    JohnDeng
    Mar 22, 2016 via iPhone
    32
    @defage 没有 Feature 都是社区的 Bugfixes 或者是 Test cases
    JohnDeng
    JohnDeng
    Mar 22, 2016 via iPhone
    33
    @janxin 刚说完六小时前又改了 API 鸟。
    jdlau
    jdlau
    Mar 22, 2016 via Android
    34
    在用 xorm
    jinzhu
    jinzhu
    Mar 22, 2016❤️1
    35
    GORM 作者在这里。。。。。

    GORM 从发布到现在已经 2 年多了,都没有改 API 很良心了。。。。这次发布 1.0 ,改了 API 让你们编译不过,不在正式环境下出错不是更良心么。。。。。。 @.@
    ikaros
    ikaros
    Mar 22, 2016
    36
    @wosmvp qor project fight!
    jinzhu
    jinzhu
    Mar 23, 2016❤️1
    37
    @ikaros 你有在用 qor 了么 ;)
    ikaros
    ikaros
    Mar 23, 2016❤️1
    38
    @jinzhu 是的 XD
    darasion
    darasion
    Mar 23, 2016
    39
    @jinzhu v1.0 定稿后的下载链接或者分支有吗?
    jinzhu
    jinzhu
    Mar 23, 2016❤️1
    40
    @ikaros 有时间可以写个文章讲讲看看你们的使用情况哈。。。。
    jinzhu
    jinzhu
    Mar 23, 2016
    41
    @darasion 这么管理软件,有个 commit hash 不就够了么   https://github.com/golang/go/wiki/PackageManagementTools  

    过一段时间我给加个 tag
    ikaros
    ikaros
    Mar 23, 2016
    42
    @jinzhu 好的 ,不过现在完成度还比较低. 可能还需要些时间
    darasion
    darasion
    Mar 23, 2016
    43
    @jinzhu commit hash 没找到呃... 在哪里?
    jinzhu
    jinzhu
    Mar 24, 2016
    44
    @defage commit hash 就是 commit 的 hash 值啊。。。。
    darasion
    darasion
    Mar 24, 2016
    45
    @jinzhu 我是问你 v1.0 定稿时的 “ commit 的 hash 值 ” 是什么?
    2goo
    2goo
    May 8, 2016
    46
    gorp 可以用用
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   1779 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 87ms · UTC 06:00 · PVG 14:00 · LAX 22:00 · JFK 01:00
    ♥ Do have faith in what you're doing.