最近花了很多时间选择ORM 主要体验了sequelize和bookshelfjs,感觉bookshelfjs更好,理由如下:
sequelize的文档很晦涩
直接看的官网原版文档,晦涩的意思是,新手跟着文档的说明走一遍常常得到错误的结果。我是遇到好几次很莫名的结果,没有时间看源代码,所以就放弃了!
bookshelfjs文档更好理解
boookshelfjs的文档名单明快多了,至少跟着文档走,都可以走出正确的结果,看看国外用户的活跃度也很高。
bookshelfjs基于的knexjs的migration很好用
核心还是文档好和活跃度吧,另外感觉ORM对提升效率很重要的,所以分享一下,给正在选择ORM的同学一些启发。有更好的推荐或者意见请留言,O(∩_∩)O~~
一直在用,推荐koahub-mysql基于bookshelf
来自 KoaHub.js
typeorm,mongorito
来自酷炫的 CNodeMD
@einsqing 谢谢推荐,认真学习一下
@zaaack 谢谢推荐
@einsqing 去github上star了,持续关注,加油
@zaaack 很像用 typeorm(喜欢 用ts 写 node),但是它好像没有办法像sequelize 一样自动生成表格的结构啊,全都得手写
综合考量之后 bookshelf 是最好用的
sequelize ,文档庞大,丰富很有好处,以后难免会有你需要的功能在内的。。不觉得文档有什么问题。。
sequelize 挺好的,我也是从官方文档上一个个demo跑起来的,也没什么问题。目前migration还没怎么玩会。 另外 bookshelf 居然不支持sqlserver,差评
@ilovedesert001 可以的吧,只要autoSchemaSync : true
我也觉得sequelize
第一次使用一点问题没有,例子很友好
而且很详细,现在改版了
@rwing 我想要的是从 mysql 的数据库同步结构到 model 文件,不是model -> mysql 同步, 也就是,我喜欢 mysql 的各种设计工具,不想再用代码手写一遍
@ilovedesert001 呃 好吧。。那确实没有。。。不过我喜欢从 code 到数据库,有个词叫 code first
Mark From Noder
@rwing 從java年代hibernate我就討厭這種,因為出來的表通常不是最優解,別說DBA,就連我自己都看不下去。
@cnlile 正解
@captainblue2013 我的做法是先出来个大概,之后自己小调整。miggration 我不用