在一个简单的CRUD rails应用程序中,我正在使用will_paginate gem。我决定删除页码以及previous_link按钮。我只渲染next_link。
<%= will_paginate @posts, :page_links => false, :next_label => 'more', :previous_label => '' %>
如何在最后一页上显示自定义消息。比如“这就是结束。”
我想我可能必须覆盖will_paginate的一些方法并在视图中添加某种布尔值?
答案 0 :(得分:3)
移至app / assets / Stylesheets / application.css在您的文件中包含以下css
.apple_pagination {
background: #f1f1f1;
border: 1px solid #e5e5e5;
text-align: center;
padding: 1em;
cursor: default; }
.apple_pagination a, .apple_pagination span {
padding: 0.2em 0.3em; }
.apple_pagination .disabled {
color: #aaaaaa; }
.apple_pagination .current {
font-style: normal;
font-weight: bold;
background-color: #bebebe;
display: inline-block;
width: 1.4em;
height: 1.4em;
line-height: 1.5;
-moz-border-radius: 1em;
-webkit-border-radius: 1em;
border-radius: 1em;
text-shadow: rgba(255, 255, 255, 0.8) 1px 1px 1px; }
.apple_pagination a {
text-decoration: none;
color: black; }
.apple_pagination a:hover, .apple_pagination a:focus {
text-decoration: underline; }
转到app / views / index.html.erb
<%= will_paginate @posts ,:class => "apple_pagination"%>
您将找到最后一页的最后一页。
同样在posts_controller.rb
中@posts = Post.order(&#34; published_at desc&#34;)。page(params [:page])。per_page(20)
答案 1 :(得分:2)
实现此目的的一种方法是在视图上添加一些条件:
<% prev = (@posts.total_pages == @posts.current_page) ? '' : 'prev' %>
<%= will_paginate @posts, :page_links => false, :next_label => 'more', :previous_label => prev %>
答案 2 :(得分:1)