rails时间问题

问题

[ruby-on-rails]    [ruby]    [time]    [timezone]

DateTime.now或Time.now?

这两个我应该用我的Rails应用程序:

DateTime.now or Time.now

有没有在应用程序中使用这两种有什么害处?

哪有永远是如果以上(

now

)为例,两者之间的差异? (在我的当前系统,他们都显示相同的时间)

作者

- Zabba

编辑

- Simone Carletti

答案

Rank --  2

在谈到

Time.now

(不

DateTime.now

):

创建该对象将使用您的系统时钟所能达到的分辨率被创建,并因此可能包括秒的小数部分.

a = Time.new #=> Wed Apr 09 08:56:03 CDT 2003
b = Time.new #=> Wed Apr 09 08:56:03 CDT 2003
a == b #=> false
"%.6f" % a.to_f #=> "1049896563.230740"
"%.6f" % b.to_f #=> "1049896563.231466"

作者

- slandau

编辑

- Simone Carletti

Rank --  2

如果你想获得在应用程序的时区的时间,你就需要调用

Time.zone.now

,所以这是我通常使用的东西.

Time.now

DateTime.now

会在系统的时间,这往往被设置为UTC都返回一个时间.

作者

- KurtPreston

Rank --  1

用它代替

(Date)Time.current

(Date)Time.now

铁轨延伸

Time

DateTime

对象,包括

current

属性检索Rails环境设置(默认值= UTC)时间,而不是服务器的时间(可以是任何东西).

这是至关重要的,你应该总是在UTC时间是工作在默认情况下用户输入或显示,但许多生产系统 UTC时区之间转换时除外. (如Heroku的设置为PST(GMT +8))

http://www.freeshow.net.cn/questions/19ff644f547f46b0e756424613bf95820f9c2801dd0109c34f9c760d48f9c99e/

时间: 2024-11-08 23:03:55

rails时间问题的相关文章

ruby(1.9.3) on rails新建项目后插入数据,时间和当前时间不符

下午16点25插入数据,显示的created time是8点15,我开始在application.rb中是这么设置的时区 config.time_zone = 'Beijing' 经过调查后修改为config.active_record.default_timezone = 'Beijing',即可显示当前时间. 据网上的说法:不加config.active_record.default_timezone = 'Beijing'显示的是utc的时间,加了之后才会转为本地时间

安装 Ruby, Rails 运行环境

对于新入门的开发者,如何安装 Ruby, Ruby Gems 和 Rails 的运行环境可能会是个问题,本页主要介绍如何用一条靠谱的路子快速安装 Ruby 开发环境. 次安装方法同样适用于产品环境! 系统需求 首先确定操作系统环境,不建议在 Windows 上面搞,所以你需要用: Mac OS X 任意 Linux 发行版本(Ubuntu,CentOS, Redhat, ArchLinux ...) 强烈新手使用 Ubuntu 省掉不必要的麻烦! 以下代码区域,带有 $ 打头的表示需要在控制台(

Rails Action View::Helpers 方法

一为什么在Rails使用helper方法: 前言:在生成controller文件时的rails app就会顺带生成相应的helper文件. 1.Helper方法指的是可以在template中使用的辅助方法,把输出的资料转化为输出的html字符串; 2.可以是简化template的文件复杂结构,即将template中比较复杂的结构用helper文件包装起来,简化template的界面和易于修改 已下都是helper辅助方法(其中的几个): 二.asserts(静态档案)辅助方法 1.rails整合

《Ruby on Rails Tutorial》

总共分为11章节,一个简单的微博系统.完全是以测试去驱动开发,所以书里面有很多测试代码,刚开始会觉得很不习惯,然后过了一段时间后,还是不习惯这样的开发方式.最后选择以自己的方式来整理书里面的知识点.也就是说,我把开发的部分,跟测试部分,区分开来.后面想了下,觉得知识点可以分为以下4点. 1.git的使用初始化项目 git init添加内容 git add .提交到本地仓库 git commit -m "备注"提交到远程分支 git push拉取内容 git pull查看分支 git b

rails rake和示例

一篇看到的讲解得不错的文章 http://blog.csdn.net/clskkk2222/article/details/6735365 这里还有一些例子: Rake Documentation Rails Rake Tutorial Using the Rake Building Language ==================================================================================================

mac快速正确的安装 Ruby, Rails 运行环境

Mac OS X 任意 Linux 发行版本(Ubuntu,CentOS, Redhat, ArchLinux ...) 强烈新手使用 Ubuntu 省掉不必要的麻烦! 以下代码区域,带有 $ 打头的表示需要在控制台(终端)下面执行(不包括 $ 符号) 步骤0 - 安装系统需要的包# For Mac # 先安装 [Xcode](http://developer.apple.com/xcode/) 开发工具,它将帮你安装好 Unix 环境需要的开发包 # 然后安装 [Homebrew](http:

开始了大概三四天的Rails学习之路

最近因为一位极光推送朋友,我开始了大概三四天的Rails学习之路,最终达到的水平是可以比较轻松地做出大部分功能,然后自我感觉可以自如地按照Rails的设计思想去思考.由于编程的日益流行,我结识了越来越多非计算机系的学生出于爱好开始写代码,但是其中的大部分人也许在用着一些错误的学习方式来学习编程,为了避免大家再继续走弯路,在这篇文章中,我会介绍下一个初学者要如何学习Rails. 1. 为何而学,目标是什么? 今天和朋友在走路时,谈到要如何学习Rails,我问的第一个问题是,你为什么要学习Rails

[ 翻译]ruby rails相关的常见服务器

原文:http://stackoverflow.com/questions/4113299/ruby-on-rails-server-options Apache vs Nginx 他们都是web服务器,都能伺服静态文件.Apache更加流行,拥有更多的功能:Nginx则相对功能少.小巧.快速. Apache 和 Nginx都能在盒子外(out-of-the-box)伺服Ruby服务器,为此你需要使用另外的插件来组合他们. Apache 和 Nginx都能作为反向代理,就是说他们能够把进来的HT

刻意练习--Rails RESTful(一)

一本被人反复提及的书<哪儿来的天才>中说过,大部分所谓的天才都是通过反复的刻意练习得到的.当你的练习时间达到10000小时以后,你就会成为该领域的专家. 最近在学习rails如何实现RESTful Web Service.自己想给自己设计一个练习的模板,进行反复练习.开发过程采用的是TDD的方式进行开发. 练习背景: 我们涉及三个Domain对象,Products.Orders.Payment 1.新建工程rails-rest-practice rails new rails-rest-pra