我认为这与“普通旧Ruby对象”有关
我为“log_entry”模型构建了以下方法:
def parse_time(string)
parts = string.split(":").map(&:to_f)
parts = [0] + parts if parts.length == 2
hours, minutes, seconds = parts
seconds = hours * 3600 + minutes * 60 + seconds
seconds.to_i
end
我想将它提取到一个普通的旧ruby类中,然后在rails log_entry模型类中使用此方法作为neccesscary。
我将把这个类放在哪里,我将如何在rspec中测试它?
答案 0 :(得分:1)
您不需要在Ruby on Rails中创建这样的方法。它只是以秒数转换时间(字符串)。
您可以使用Time.parse("23:01").seconds_since_midnight
如果您需要在视图/控制器中快速进行此类转换,可以为其添加辅助方法:
在app/controllers/application_controller.rb
:
def parse_time(string)
Time.parse(string).seconds_since_midnight
end
helper_method :parse_time