0

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

提交(创建)歌曲后,我似乎收到“nil:NilClass 的未定义方法`strftime'”错误。如果你去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 %>
4

1 回答 1

3

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

于 2013-07-17T21:02:14.140 回答