我正在为广告添加过期功能。过期应该包含数据和时间像这样: 12.06.12 14:24
此时我这样做了: 我在数据库中添加了名为到期
的广告的附加列before_create :set_expiration_date
def set_expiration_date
self.expiration = Date.today + 56.days
end
这很有效。现在我想看到这个到期日期。
广告#展示
<%= @advertisement.expiration.to_formatted_s(:db) %>
但它只给了我2015-02-06
当我将 set_expiration_date 更改为:
时 def set_expiration_date
self.expiration = Time.now + 56.days
end
仍然像2015-02-06
没有时间。
所以我想知道只有zlution会在我的广告表中有两列 expiration_date 和 expiration_time 。
然后在我的模型中有这样的事情:
before_create :set_expiration_date
before_create :set_expiration_time
def set_expiration_date
self.expiration_date = Date.today + 56.days
end
def set_expiration_time
self.expiration_time = Time.now
end
我认为这个解决方案非常难看。
我的问题还有其他更简单的解决方案吗?如何存储单列日期和时间?
提前致谢!
答案 0 :(得分:2)
Change从expiration
到date
的{{1}}数据类型。
答案 1 :(得分:1)
将expiration
从date
更改为datetime
,为什么不使用strftime
来格式化输出
示例:
<%= @advertisement.expiration.strftime("%b %d %Y, %H:%M") %>