Ruby on rails 4 Rails 4索引仅显示1个用户

Ruby on rails 4 Rails 4索引仅显示1个用户,ruby-on-rails-4,devise,indexing,Ruby On Rails 4,Devise,Indexing,我目前正在使用Desive+omniauth身份验证来注册用户。但当我点击索引链接时,它只显示1个用户。我目前约有5名演示用户注册。是否有人知道如何向其他4名用户以及更多将要注册的用户展示 这些是我的用户和控制器代码行 Application_contoller.rb class ApplicationController < ActionController::Base # Prevent CSRF attacks by raising an exception. # For

我目前正在使用Desive+omniauth身份验证来注册用户。但当我点击索引链接时,它只显示1个用户。我目前约有5名演示用户注册。是否有人知道如何向其他4名用户以及更多将要注册的用户展示

这些是我的用户和控制器代码行

Application_contoller.rb

class ApplicationController < ActionController::Base
  # Prevent CSRF attacks by raising an exception.
  # For APIs, you may want to use :null_session instead.
  protect_from_forgery with: :exception

  before_filter :configure_permitted_parameters, if: :devise_controller?

  protected

    def configure_permitted_parameters
      devise_parameter_sanitizer.for(:sign_up) { |u| u.permit(:name, :email, :password, :last_name, :first_name) }
      devise_parameter_sanitizer.for(:account_update) { |u| u.permit(:first_name, :last_name,:profile_name,:email, :password, :name) }
      devise_parameter_sanitizer.for(:sign_in) { |u| u.permit(:name, :email, :password, :last_name, :first_name) }
      devise_parameter_sanitizer.for(:account_update) { |u| 
      u.permit(:password, :password_confirmation, :current_password, :name) 
    }
    end

end
Application\u controller.rb
类ApplicationController
user.rb

class User < ActiveRecord::Base
  has_many :authentications
  # Include default devise modules. Others available are:
  # :confirmable, :lockable, :timeoutable and :omniauthable
  devise :database_authenticatable, :registerable, :omniauthable,
         :recoverable, :rememberable, :trackable, :validatable,
         :omniauth_providers => [:facebook]

  attr_accessible :email, :password, :password_confirmation, :name

  def self.from_omniauth(auth)
    where(provider: auth.provider, uid: auth.uid).first_or_initialize.tap do |user|
      user.provider = auth.provider
      user.uid = auth.uid
      user.name = auth.info.name
      user.email = auth.info.email
      user.oauth_token = auth.credentials.token
      user.oauth_expires_at = Time.at(auth.credentials.expires_at)
      user.save!
    end
  end

  def self.new_with_session(params, session)
    if session["devise.user_attributes"]
      new(session["devise.user_attributes"], without_protection: true ) do |user|
        user.attributes = params
        user.valid?
      end
    else
      super
    end
  end

  def password_required?
    super && provider.blank?
  end

  def email_required?
    super && provider.blank?
  end
end
class用户[:facebook]
属性可访问:电子邮件、:密码、:密码确认、:姓名
定义自授权(授权)
其中(provider:auth.provider,uid:auth.uid)。首先_或_initialize.tap do | user|
user.provider=auth.provider
user.uid=auth.uid
user.name=auth.info.name
user.email=auth.info.email
user.oauth_token=auth.credentials.token
user.oauth\u expires\u at=Time.at(auth.credentials.expires\u at)
user.save!
终止
终止
定义self.new_与_会话(参数,会话)
如果会话[“设计用户属性”]
新建(会话[“Desive.user_attributes”],无_保护:true)do|user|
user.attributes=params
user.valid?
终止
其他的
超级的
终止
终止
是否需要def密码?
super&&provider.blank?
终止
是否需要def电子邮件?
super&&provider.blank?
终止
终止
用户\u controller.rb

class UsersController < ApplicationController

  def show
    @user = User.find(params[:id])
  end

  def index
    @users = User.paginate(page: params[:page])
  end

  def edit
    @user = User.find(params[:id])
  end

  def update
    @user = User.find(params[:id])
    if @user.update_attributes(user_params)
      flash[:success] = "Profile updated"
      redirect_to @user
    else
      render 'edit'
    end
  end

  private

    def user_params
      params.require(:user).permit(:name, :email, :password,
                                   :password_confirmation)
    end
end
class UsersController
app/views/user/index.html.erb

<% provide(:title, 'All users') %>
<h1>All users</h1>

<%= will_paginate %>

<ul class="users">
  <%= render @users %>
</ul>

<%= will_paginate %>

所有用户
app/views/user/_user.html.erb

<li>
    <%= gravatar_for user, size: 50 %>
    <%= link_to user.name, user %>

</li>

  • 提前谢谢

    看起来像是您的分页问题。试试看你确定没有将WillPaginate的每页设置
    设置为“1”吗?似乎不起作用:/。我在任何地方都没碰过WillPaginate的设置所以。。。还有其他想法吗?可能是个愚蠢的问题,但假设这不是分页问题,你确定其他用户肯定在目标数据库中吗?我不认为是这样,因为当我转到rails控制台并运行User.paginate(第1页)时,我看到了所有的信息。。。谢谢你的意见