为什么希罗库不喜欢斯特夫时间?



似乎Heroku/PostgreSQL不支持strftime。所以,如果我想转换为:

@event.date_start.strftime("%B #{@event.date_start.day.ordinalize}")

不使用strftime有哪些选项?


编辑:

这是我的Heroku错误日志。它绊倒了strftime,它在我的开发环境中的SQLite中工作得很好:

2013-05-19T15:51:07.001968+00:00 app[web.1]: ActionView::Template::Error (undefined method `strftime' for nil:NilClass):

问题是@event没有date_start:

2013-05-19T15:51:07.001968+00:00 app[web.1]: ActionView::Template::Error (undefined method `strftime' for nil:NilClass)

上面的错误意味着strftimenil对象上被调用,在你的例子中是@eventdate_start

如果你的事件记录应该总是有一个date_start,那么更新或删除有问题的。
否则你可以使用try:

@event.date_start.try(:strftime, "%B #{@event.date_start.day.ordinalize}")

最新更新