私はこれを解決できないようです。私を助けてください。投稿とコメントのモデルがあります。Ruby on Rails:Post.comments.last get id error
post.rb
has_many :comments
このコメントモデルです:私のポストモデルは次のようになります私のポストインデックスビューで
comment.rb
belongs_to :comment
、私はこのコードを書いた:
index.html.erb
<tbody>
<% @Posts.each do |post| %>
<tr>
<td><%= post.comments.last %></td>
</tr>
<% end %>
</tbody>
これが動作しているようですし、私にこの値を与える:
#<Comment:0x007f6b34bfca88>
しかし、私はこれにコードを変更するとき:
<tbody>
<% @Posts.each do |post| %>
<tr>
<td><%= post.comments.last.id %></td>
</tr>
<% end %>
</tbody>
をそれは私が達成したかった何
undefined method `id' for nil:NilClass
が私の見解では最後のコメントのIDを取得することでした。このエラーが発生します。あなたがこの問題に答えるなら、私に教えてください。ありがとう!
はコメントがありませんあなたの記事の1のように見えるコメントはありませんコメントがあり
id
、および空のセルを返します。あなたのコードを 'post.comments.last.try(:id)'に変更してください。 – moveson
@movesonねえ、それは動作します!ありがとうございます! :) – Lorelyn