2013-07-23 72 views
3

当我把will_paginate分页列表到twitter引导标签。它只是列出了它们之间的分页链接。我使用will_paginate-bootstrap来设置分页的样式。bootstrap导航标签与will_paginate分页在每个标签

我已经尝试过不使标签的工作:

取出分页造型

删除分页块

如果我删除所有红宝石标签的工作,所以他们工作独立

<div class="tabbable"> 
    <ul class="nav nav-tabs"> 
    <li class="active"><a href="#A" data-toggle="tab">Newest</a></li> 
    <li><a href="#B" data-toggle="tab">Activity</a></li> 
    </ul> 

    <div class="tab-content"> 
    <div class="tab-pane active" id="A"> 
     <%= render partial: "posts/post", collection: @posts, as: :post %> 
     <%= will_paginate @posts, renderer: BootstrapPagination::Rails %> 
    </div> 
    <div class="tab-pane" id="B"> 
     <%= render partial: "posts/post", collection: @posts_by_activity, as: :post %> 
     <%= will_paginate @posts_by_activity, renderer: BootstrapPagination::Rails %>   
    </div> 
    </div> 
</div> 

回答

1

你正在使用哪个版本的Rails?我使用的是3.2.17,我用Bootstrap 3选项卡和will_paginate处理了一些我自己的问题,但是与它的声音不同。

这是我在做什么:

<ul class="nav nav-tabs"> 
    <li class="active"><a href="#announcements" data-toggle="tab"><i class="fa fa-exclamation-circle"></i> Announcements</a></li> 
    <li><a href="#activity" data-toggle="tab"><i class="fa fa-bar-chart-o"></i> Site activity</a></li> 
</ul> 

<div class="tab-content"> 
    <div class="tab-pane fade in active" id="announcements"> 
    <%= render 'announcements' %> 
    </div> 

    <div class="tab-pane fade" id="activity"> 
    <%= render 'activity' %> 
    </div> 
</div> 

和我有:对每一个泛音

<%= will_paginate @announcements, renderer: BootstrapPagination::Rails %> 

位。对我来说,partials是不同的信息,所以我在每个特性#index controller action中都有实例变量。你有没有尝试为每个像这样做一个单独的部分,看看是否有用?

分页导航工作正常,但是点击的内容另一页上添加页面=#查询字符串:?

http://localhost:3000/features?page=2 

这则适用于标签。因此,如果我想查看“通知”选项卡的第2页,则点击“站点活动”选项卡也会进入第2页,因为查询字符串不会更改。烦人。

+0

您可以有选项卡特定页面。 – AarCee

0

使用will_paginate gem的选项卡特定页面是可能的。

请参阅http://blog.devinterface.com/2011/08/tips-multiple-pagination-with-will_paginate/

的情况下,在这里重现同一个东西(有一些简化)的链接变得过时:

在视图:

<%= will_paginate @products, :param_name => 'products_page' %></p> 
    <%= will_paginate @services, :param_name => 'services_page' %><br /> 

和Controller:

@products = current_company.products.paginate(:page => params[:products_page], :per_page => 10)<br /> 
@services = current_company.products.paginate(:page => params[:services_page], :per_page => 10)<br /> 

从上面的代码可以看出,密钥li es发送一个不同的参数键值(双关语!)。通过这种方式,两个选项卡的页面信息都会附加到URL中。