how*_*cks 4 ruby datetime ruby-on-rails
我是Ruby on Rails的新手.我使用SQLite3创建了一个博客,因为我无法安装MySQL,并希望在标题旁边显示创建日期.
使用时间戳创建创建日期.因为我是RoR的新手,generate scaffold所以我使用了这个博客,所以我不能完全确定这一切是如何运作的.
目前,当我显示该created_at字段时,我给出了一个丑陋的格式:
2011-12-05 14:11:10 UTC
Run Code Online (Sandbox Code Playgroud)
有没有办法改变它DD-MM-YYYY HH:MM,以便显示,或者最好说" posted 30 days ago".我意识到后者会更棘手.
我认为你正在寻找strftime- Ruby文档在这里.
例:
irb(main):001:0> a = Time.now
irb(main):002:0> a.strftime("%d-%m-%Y %H:%M")
=> "05-12-2011 15:08"
Run Code Online (Sandbox Code Playgroud)
首先:你必须安装 SQLite 以外的东西(我推荐 PostgreSQL,而不是 MySQL)。SQLite 不适合生产,并且您真的不希望您的开发和生产数据库服务器不同。
对于你的问题:Ruby 和 Rails 有很多日期格式化方法。to_s可能会做你想做的事,或者有类似的事情ActionView::Helpers::DateHelper.time_ago_in_words。