ruby-on-rails – 在nil对象上使用strftime – 如何防止错误?

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – 在nil对象上使用strftime – 如何防止错误?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我使用strftime格式化我的原始时间作为输入框的文本.通常,当我使用strftime时,我检查对象是否为nil,以防止使用除nil之外的错误?不过似乎我可以在这里使用:
<%= text_field_tag :event_date,@event.event_date.strftime("%m/%d/%Y at %I:%M%p"),:size=>30 %>

删除了,除非因为它是一个错误.如果@ event.event_date为零,我该如何确认此语句是否有效?

谢谢

解决方法

一个诀窍就是使用 try.
<%= text_field_tag :event_date,@event.event_date.try(:strftime,"%m/%d/%Y at %I:%M%p"),:size=>30 %>

或者只是检查event_date是否设置:

<%= text_field_tag :event_date,(@event.event_date && @event.event_date.strftime("%m/%d/%Y at %I:%M%p")),:size=>30 %>
原文链接:https://www.f2er.com/ruby/265903.html

猜你在找的Ruby相关文章