jjzjj

ruby-on-rails - Rails ActiveSupport 时间解析?

Rails'ActiveSupportmoduleextendsthebuiltinrubyTimeclasswithanumberofmethods.值得注意的是,有一个to_formatted_s方法,它让您可以编写Time.now.to_formatted_s(:db)来获取数据库格式的字符串,而不必到处写丑陋的strftime格式字符串。我的问题是,有没有办法倒退?类似于Time.parse_formatted_s(:db)的东西,它会解析数据库格式的字符串,返回一个新的Time对象。这似乎是Rails应该提供的东西,但如果是的话,我找不到它。是我找不到,还是需要自己写?谢谢

ruby-on-rails - Time.zone.now.to_date 是否等同于 Date.today?

Time.zone.now.to_date是否等同于Date.today?另一种表达方式:Time.zone.now.to_date==Date.today是否始终为true?如果不是,在应用程序时区中获取对应于“现在”的日期对象的最佳方法是什么? 最佳答案 它们并不总是相同的。Time.zone.now.to_date将使用应用程序时区,而Date.today将使用服务器时区。因此,如果两者位于不同的日期,那么它们就会不同。来self的控制台的示例:ruby-1.9.2-p290:036>Time.zone="Sydney"=>"

ruby - 使用 delta 遍历 Ruby Time 对象

有没有办法在Ruby中迭代时间范围并设置增量?这是我想做的事情的想法:forhourin(start_time..end_time,hour)hour#=>Timeobjectsettohourend您可以遍历Time对象,但它会在两者之间每隔一秒返回一次。我真正需要的是一种设置偏移量或增量(例如分钟、小时等)的方法这是内置于Ruby中的,还是有合适的插件可用? 最佳答案 在1.9之前,您可以使用Range#step:(start_time..end_time).step(3600)do|hour|#...end但是,此策略非常慢,

ruby-on-rails - DateTime.now 还是 Time.now?

我应该在我的Rails应用程序中使用两者中的哪一个:DateTime.noworTime.now在应用程序中同时使用两者有什么坏处吗?在上述(now)示例中,两者之间是否存在任何差异?(在我当前的系统上,它们同时显示) 最佳答案 使用(Date)Time.current而不是(Date)Time.nowRails扩展了Time和DateTime对象,并包含current属性,用于检索Rails环境设置的时间(默认=UTC),而不是服务器时间(可以是任何东西)。这很关键-您应该始终以UTC时间工作,除非在时区之间转换以供用户输入或显示

ruby - 从 Time 对象获取下个月/上个月

我有一个时间对象,想找到下一个月/上一个月。加减天数不起作用,因为每个月的天数不同。time=Time.parse('21-12-200810:51UTC')next_month=time+31*24*60*60增加月份也会下降,因为必须注意滚动time=Time.parse('21-12-200810:51UTC')next_month=Time.utc(time.year,time.month+1)time=Time.parse('01-12-200810:51UTC')previous_month=Time.utc(time.year,time.month-1)我发现唯一有用的是

ruby - Date、Time 和 DateTime 类是否必需?

Date和Time类可以同时处理这两个类的目的是什么? 最佳答案 总结一下常见的ruby​​时间类是什么:时间这是基本的主力核心ruby​​时间类。具有日期和时间属性(年、月、日、时、分、秒、亚秒)基于unix纪元(1970-01-01)的浮点秒间隔可以处理unix纪元之前的负数可以处理以秒为单位的时间运算在本地使用UTC或“本地”(系统时区)在处理时区时确实有3种Time对象,让我们看一个夏令时来显示DST:utc=Time.utc(2012,6,1)#=>2012-12-2100:00:00UTCutc.zone#=>"UTC"

ruby-on-rails - 在 Rails 中将日期时间字符串转换为 UTC

我有这样一个字符串:"2010-01-0112:30:00"我需要将其从当前本地时区转换为UTC。我试过了,但它似乎认为该字符串已经是UTC。"2010-01-0112:30:00".to_datetime.in_time_zone("CentralTime(US&Canada)")=>Fri,01Jan201006:30:00CST-06:00我不确定从这里到哪里去。从我的评论中添加:>>Time.zone="PacificTime(US&Canada)"=>"PacificTime(US&Canada)">>Time.parse("2010-10-2700:00:00").getu

Ruby:将 Date 和 Time 对象组合成 DateTime

简单的问题,但我找不到好的或明确的答案。将Ruby日期和时间对象(对象,而不是字符串)组合成单个DateTime对象的最佳和最有效的方法是什么? 最佳答案 我找到了这个,但它并不像你希望的那样优雅:d=Date.new(2012,8,29)t=Time.nowdt=DateTime.new(d.year,d.month,d.day,t.hour,t.min,t.sec,t.zone)顺便说一句,rubyTime对象还存储年、月和日,因此您在创建DateTime时会丢弃它。 关于Ruby:

ruby - 使用 Ruby,我如何迭代一个 for 循环 n.times

我有一个基本的ruby​​循环forvideoinsite.postsvideo.some_parameterendfor我想运行此循环2或3次。这可能吗? 最佳答案 3.timesdo#doworkhereend检查http://www.tutorialspoint.com/ruby/ruby_loops.htm 关于ruby-使用Ruby,我如何迭代一个for循环n.times,我们在StackOverflow上找到一个类似的问题: https://sta

ruby - 如何将两周添加到 Time.now?

如何在Ruby中的当前Time.now中添加两周?我有一个使用DataMapper的小型Sinatra项目,在保存之前,我有一个字段填充了当前时间加上两周,但没有按需要工作。任何帮助是极大的赞赏!我收到以下错误:NoMethodErrorat/undefinedmethod`weeks'for2:Fixnum这是模型的代码:classJobincludeDataMapper::Resourceproperty:id,Serialproperty:position,Stringproperty:location,Stringproperty:email,Stringproperty:ph