我花了过去几个小时找出为什么 will_paginate 不能在我的用户帐户区域页面“site.com/”(用户/新)上工作,但可以在其他页面上工作,例如 site.com/search、site.com /浏览。
有什么办法可以解决我目前的问题吗?用户帐户区域页面与用户注册的页面相同,但隐藏了注册内容。这是我的根路径(site.com/)。
显示下一个和上一个链接,但所有结果都显示在一个页面上。
控制器:
class UsersController < ApplicationController
include UsersHelper
include MessagesHelper
def new
@user = User.new
if logged_in?
@current_user = User.find_by_username(current_user.username)
@default_photo = Photo.find(current_user.profile.photo_id) if current_user.profile.photo_id
@micropost = Micropost.new(:user_id => users_id)
@microposts = current_user.microposts.page(params[:page]).per_page(1)
@default_image = default_profile_image
@comment = Comment.new(:user_id => current_user.id)
HTML/HAML:
.microposts
= render 'users/partials/micropost_form'
- if @current_user.microposts.any?
= render 'users/partials/microposts'
= will_paginate @microposts
我的一些微博部分
<% @current_user.microposts.each do |m| %>
<% if m.poster_id.nil? %>
<div class="postHolder">
<nav class="micropostOptions">
<ul class="postMenu">
<li class="deletePost"><%= link_to content_tag(:span, "Delete post"), m, :method => :delete, :confirm => "Are you sure?", :title => m.content, :class => "message_delete" %>
</li>
<li class="disableCommenting"><%= link_to content_tag(:span, "Pause commenting"), "2" %></li>
<li class="blockCommenter"><%= link_to content_tag(:span, "Block commenter"), "3" %></li>
<li class="openInNewWindow"><%= link_to content_tag(:span, "Open in new window"), "4" %></li>
<li class="reportAbuse"><%= link_to content_tag(:span, "Report abuse"), "5" %></li>
</ul>
</nav>
更新
嗯,我刚刚在我的用户控制器中创建了一个单独的操作,称为microposts
给它自己的路由和视图,然后在该页面上尝试 will_paginate,但它仍然在一页上返回所有结果。使困惑