私は編集ページを持つ簡単なユーザーモデルを持っています。現在、あなたは電子メールとパスワードを変更することができます(パスワード確認あり)。しかし、その情報を変更する前にパスワードをもう一度入力する必要はありません。ソーサリーを使用してユーザー情報を変更するためのパスワードが必要です
自分のプロファイルのみを編集できるようにするには、以前のフィルタと同様にログインする必要があるフィルタがあります。しかし、公共のコンピュータの場合は、パスワードを入力することでユーザーを再認証したいと考えています。
私はsorceryを使用して私の認証を取り戻しています。私はこれをどうやってやりますか?私がログインした後にパスワードをチェックするための任意の方法が表示されません。以下は、私の現在のusers_controllerが
class UsersController < ApplicationController
before_filter :require_login, :only => [ :edit, :update ]
before_filter :correct_user, :only => [ :edit, :update ]
def new
@user = User.new
end
def create
@user = User.new(params[:user])
if @user.save
redirect_to root_url, :notice => "Signed up!"
login_user(@user)
else
render :new
end
end
def edit
@user = User.find(params[:id])
end
def update
@user = User.find(params[:id])
if @user.update_attributes(params[:user])
flash[:success] = "Profile updated."
redirect_to root_url
else
render 'edit'
end
end
private
def correct_user
@user = User.find(params[:id])
redirect_to(root_path) unless current_user == @user
end
end