nil的未定义方法`strftime':NilClass [rails 4]

时间:2013-07-17 20:47:56

标签: ruby-on-rails ruby ruby-on-rails-4

快速分解我的应用:我有歌曲,评论和用户模型。用户可以上传歌曲并发表评论。

在提交(创建)一首歌后,我似乎得到了“未定义的方法`strftime'为nil:NilClass”错误。如果你转到show#songs.html.erb,你会看到下面的评论代码。我已经研究了Ryan Bates如何做他的评论,我的代码是相同的。不确定为什么strftime不起作用。请告知:)

注意:为什么值得我运行rails 4

完整错误消息:

NoMethodError in Songs#show

Showing /Users/apane/Downloads/leap/app/views/songs/show.html.erb where line #34 raised:

undefined method `strftime' for nil:NilClass

Extracted source (around line #34):

<% for comment in @song.comments %>
<div class="comment">
<strong><%= link_to_unless comment.site_url.blank?, h(comment.author_name), h(comment.site_url) %></strong>
<em>on <%= comment.created_at.strftime('%b %d, %Y at %H:%M') %></em>
<%=simple_format comment.content %>
<p>
<% if can? :update, comment %>

1 个答案:

答案 0 :(得分:3)

comment.created_at是nil - 这是你的问题。 这可能是因为您已创建评论但尚未保存 。 只有在保存时才会填充created_at字段。