绕过ruby-units与activesupport冲突

时间:2011-09-16 22:33:24

标签: ruby ruby-on-rails-3

我想将ruby-units与rails 3项目一起使用,但它似乎与activesupport冲突。

在我看来,activesupport和ruby-units都为String创建了一个to()方法。出于某种原因,ruby-units获胜,因此每当在rails内部调用to()时都会抛出错误。 (单位未被承认)

我想知道解决这个问题的最佳方法。我不关心从ruby-units获取to()方法,我只是不希望它干扰rails。如果有另一种方法,我想避免分叉。

要查看我的问题:

添加到您的gemfile

gem 'ruby-units'

打开rails console(我使用ruby 1.9.2登录轨道3)并尝试apples.to(1)

没有红宝石单位:

"ap"

使用:

"'apples' Unit not recognized"

1 个答案:

答案 0 :(得分:2)

答案是在Gemfile中的rails库之前要求ruby-units库:

gem 'ruby-units'
gem 'rails'

显然,你将无法在字符串上使用.to()来访问ruby-units转换。