183得票12回答
计算两个日期之间的天数

如何计算这两个日期之间的天数?start_date = Date.parse "2012-03-02 14:46:21 +0100" end_date = Date.parse "2012-04-02 14:46:21 +0200"

121得票7回答
如何在Rails中将当前时间加上10天

我尝试做了类似于以下的事情 Time.now + 5.days 但这并不起作用,尽管我依稀记得看到并深受印象的是能够像 2.years 这样做某事。 在Rails 3中我应该如何做到这一点?

120得票2回答
Rails模块中的mattr_accessor是什么?

我在 Rails 文档中找不到类似的内容,但好像 'mattr_accessor' 是一个普通 Ruby 类 中 'attr_accessor'(getter 和 setter)的 模块 对应物。 例如,在一个类中:class User attr_accessor :name de...

107得票5回答
如何使用Active Support核心扩展

我已经安装了Active Support 3.0.3和Rails 3.0.3以及Ruby 1.8.7。 当我尝试使用1.week.ago时,我得到了NoMethodError: undefined method 'week' for 1:Fixnum from (irb):2 其他核心扩展似...

104得票6回答
在Rails 3中将UTC转换为本地时间

我在Rails 3中将UTC Time或TimeWithZone转换为本地时间遇到了问题。 假设moment是一个UTC时间的Time变量(例如moment = Time.now.utc)。如何将moment转换为我的时区,并处理夏令时(即使用EST / EDT)? 更确切地说,如果时间对...

61得票6回答
如何在Ruby中将给定URL的媒体编码为base64

我正在尝试将一张图片上传到PingFM。他们的文档上说: media – base64 encoded media data. 我可以通过URL访问这张图片。我尝试(实际上是猜测)了以下内容: ActiveSupport::Base64.encode64(open("http://im...

60得票2回答
Rails ActiveSupport: 如何断言错误已被引发?

我想测试我的模型中一个会抛出特定错误的函数。这个函数大致如下: def merge(release_to_delete) raise "Can't merge a release with itself!" if( self.id == release_to_delete.id ) ...

56得票4回答
ActiveSupport::Memoizable指的是哪种Ruby记忆化模式?

所以在Rails 3.2中,ActiveSupport::Memoizable已经被弃用。 消息的内容如下:DEPRECATION WARNING: ActiveSupport::Memoizable is deprecated and will be removed in future re...

52得票1回答
如何在Rails 3之外使用ActiveSupport核心扩展

我在开发一个gem时遇到使用ActiveSupport核心扩展的问题。在AS 2.3.8上它可以工作,但是当我想将其移植到3b4时,这些扩展停止工作并且我的测试结果中充满了这样的行:undefined method `blank?' for "something":String 我已经通过以下...

51得票6回答
升级到Ruby 3.1后,使用YAML.load_file时会导致Psych :: DisallowedClass异常。

在升级到 Ruby 3.1 时,当使用 YAML.load_file some_file_name 时,我看到以下排序错误信息 Psych::DisallowedClass: Tried to load unspecified class: Matrix 其他加载语句也会引起类似的错误,...