在我的评论显示页面的底部,我有一个指向下一条评论的链接。问题是我无法获得下一条评论的标题。
以下是评论模型中的功能:
def next
post.comments.where("id > ?", id).order("id ASC").first
end
以下是评论控制器:
def show
@post = Post.find(params[:post_id])
@comment = Comment.find params[:id]
@commentnext = @post.comments.find(params[:id])
end
这是链接:
<%= link_to (???), post_comment_path(@post, @commentnext.next) %>
我试过了:
<%= link_to "#{@comment.title}", post_comment_path(@post, @commentnext.next) %>
但这给了我评论的标题。
答案 0 :(得分:3)
假设@commentnext.next
是&#34;下一个评论&#34;你引用的是@commentnext.next.title
,可能会给你下一个评论的标题。
<%= link_to @commentnext.next.title, post_comment_path(@post, @commentnext.next) %>
如果@commentnext.next
返回了ID,请在控制器中使用以下内容:
def show
@post = Post.find(params[:post_id])
@comment = Comment.find params[:id]
@commentnext = @post.comments.find(params[:id])
@next_title = Comment.find(@commentnext.next).title
end
然后在你看来:
<%= link_to @next_title, post_comment_path(@post, @commentnext.next) %>
两种解决方案中的一种可能会对您有所帮助。
答案 1 :(得分:3)
从评论中:只使用您链接的同一对象:
<%= link_to @commentnext.next.title, post_comment_path(@post, @commentnext.next) %>