Jon*_*nah 21 ruby ruby-on-rails datamapper ruby-datamapper ruby-on-rails-4
我想在Ruby on Rails项目中为我的模型使用一个更独立的系统.看起来解决方案是DataMapper.但是,我看到他们的存储库在去年都没有更新过,当安装在Rails 4项目中时,它与新版Gems的gem版本依赖冲突.使用Rails 4时,搜索不会显示任何内容.
现在的状态是什么?我应该使用它还是别的什么?
Abe*_*ker 29
作为每天在我的工作中使用DataMapper的人,我建议坚持使用ActiveRecord,除非你连接到你不能控制模式的遗留数据库(但如果是这样的话,我也会考虑续集).除了它是EOL(作为邮件列表中的维护者)之外,许多需要模型持久性的宝石将支持ActiveRecord,但它们很少支持DataMapper,所以期望自己实现支持.根据我的经验,如果我发现了一个错误,我知道由于DataMapper的使用/放弃率低,我也必须自己修复它.
正如danmanstx所提到的,维护者现在主要关注Ruby Object Mapper(ROM),它曾经是DM2.虽然某些ROM功能完整,但它仍然没有发布日期AFAIK(参见路线图).
如果你看一下release-1.2相关DM宝石的分支,你可以看到它每隔一段时间就会得到一次小的更新.然而,DataMapper宝石中有数百个问题积压,许多超过2年的问题根本无法解决,因为没有足够的DataMapper维护者(我不会责怪他们想要处理某些事情)新!).
您对具有版本冲突的DM gem的最新RubyGems版本是正确的.如果你想使用DM的最新稳定版本,我建议使用release-1.2你需要的DM宝石的分支,例如
gem 'dm-core', git: 'git://github.com/datamapper/dm-core.git', branch: 'release-1.2'
Run Code Online (Sandbox Code Playgroud)
And*_*ing 12
如果你正在考虑使用DataMapper,你真的应该看看Sequel,FWIW我将从ActiveRecord迁移到Sequel.
但是,如果你喜欢那种自以为是的Rails意识形态,那么你不应该看看ActiveRecord的最小摩擦.
没有不尊重Rails社区和开发人员的辛勤工作,但在处理范围,关联条件,关系与关联,嵌套属性,记录初始化,基于字符串的排序子句,搜索字符串,哈希和arel,无法轻松地表达和撰写查询或有效地重复使用范围,相关模型错误的验证,父母与儿童协会建立的怪异,糟糕的文档以及没有一个很好地凝聚在一起,你可能也决定转向一个明显更好的想法ORM像Sequel.
同样地,你可以看一下Rails的意识形态(毫不掩饰地表达自己的意见),并考虑如果你更喜欢在现代网络框架中选择和概念上更清洁的方法,那么哪些更适合.Rails 4对我来说是最后一个借口,你好Sinatra/Padrino/Sequel,Postgres/Redis/Solr和Backbone/Marionette/Eco/Coffeescript ......我自以为是的网络开发框架:)
| 归档时间: |
|
| 查看次数: |
6521 次 |
| 最近记录: |