首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Rails:使用注释模型的分页问题进行呈现

Rails:使用注释模型的分页问题进行呈现
EN

Stack Overflow用户
提问于 2012-03-03 17:31:29
回答 1查看 549关注 0票数 0

我一直在处理的当前页面是一个页面,用户可以在这个页面上创建一个特定微博下的评论。所有的微柱都显示在同一页上,这些微柱被分页。在每个特定的微博上,都有评论,这些评论应该被分页,而我目前面临的问题是,只有在HTML代码是这样的情况下才会进行分页:

代码语言:javascript
复制
<div id='comments'>
<%=render @comments %>
<%= will_paginate @comments, :class =>"pagination" %>
</div>

但问题是,只有第一条微博的评论才会出现在每个微博上,而不是具体的微博评论上。所以我想为什么不把代码写成这样:

代码语言:javascript
复制
<div id='comments'>
<%=render micropost.comments %>
<%= will_paginate @comments, :class =>"pagination" %>
</div>

这基本上设置了正确微博中的所有具体注释,但它没有分页,但是分页链接显示了,所以我想,把这个放上去会有用,但它没有,得到了一个错误:

代码语言:javascript
复制
<div id='comments'>
<%=render micropost.comments %>
<%= will_paginate micropost.comments, :class =>"pagination" %>
</div>

我很困惑,也不知道该怎么做,是的,微博应该没有@,我会给出任何有帮助的建议!谢谢!

我的User#Show

用户控制器

代码语言:javascript
复制
class UsersController < ApplicationController
  def show
    @user = User.find_by_id(params[:id])
    @school = School.find(params[:id])
    @micropost = Micropost.new
    @comment = Comment.new
    @comment = @micropost.comments.build(params[:comment])
    @comments = @micropost.comments.paginate(:page => params[:page], :per_page => 10)
    @microposts = @user.microposts.paginate(:per_page => 10, :page => params[:page])
  end
end
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-03-03 22:00:03

这是可行的,但您需要在视图中执行任务这一事实告诉您,这可能不是这样做的方法:

代码语言:javascript
复制
<div id='comments'>
  <% comments = micropost.comments.paginate(:per_page => 10, :page => params[:page]) %>
  <%= render comments %>
  <%= will_paginate comments, :class =>"pagination" %>
</div>

请注意,微博和评论都使用相同的页面参数。因此,如果您想查看任何给定的微博评论的第二页,您也将切换到第二页的微博。我会重新考虑在同一页上显示所有这些信息。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9548194

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档