0

Rails (3.2) は初めてで、ユーザーがデータベース ID とパスワードを使用してログインできるようにする方法を探しています。ドキュメントを読むと、Authlogic はログイン名または電子メールを使用したログインを許可しているようです。ユーザーがデータベース ID とパスワードを提供することで認証できるように、gem を拡張することは可能ですか?

これが私の現在のユーザーモデルです

class User < ActiveRecord::Base
attr_accessible :password, :password_confirmation, :current_login_ip, :email, :failed_login_count, :first_name, :last_login_ip, :last_name, :last_request_at, :login_count, :password_salt,
              :perishable_token, :persistence_token, :single_access_token

acts_as_authentic
end

そして、現在のユーザー セッション モデル

class UserSessionsController < ApplicationController

  def new
    @user_session = UserSession.new
  end

  def create
    @user_session = UserSession.new(params[:user_session])
    if @user_session.save
      flash[:notice] = "Successfully logged in."
      redirect_to root_url
    else
      render :action => 'new'
    end
  end

  def destroy
    if UserSession.find
      UserSession.find.destroy
      flash[:notice] = "Successfully logged out."
    end

    redirect_to root_url
  end
end

現在の設定では、メール アドレス認証を使用しています。

前もって感謝します!

4

1 に答える 1

1

Authlogicでは、ログインフィールドとして使用する列を選択できます。Login :: Configモジュールlogin_fieldオプション)を参照 してください。

acts_as_authentic do |c|
  c.login_field = :database_id_or_whatever_fits_your_needs
end
于 2012-08-12T19:28:35.403 に答える