Devise や Cancan を使用せずに、ユーザーが自分のアカウントのみを編集できるようにしたいと考えています。
私は次のものを持っていますapplication_controller
:
helper_method :current_user
helper_method :require_proprio
private
def current_user
@current_user ||= User.find(session[:user_id]) if session[:user_id]
end
def require_proprio
unless current_user == (params[:id])
render :file => "#{Rails.root}/public/422", :status => 500
end
end
は次のusers_controller
とおりです。
before_filter :require_proprio , :only => [ :edit, :update]
しかし、user.id = 10
たとえば に接続しているときは、ページにアクセスできませんhttp://localhost:3000/users/10/edit
。ページpublic/422
が表示されます。にもアクセスしてみましhttp://localhost:3000/users/11/edit
たが、結果は同じです(public/422)。
誰かが私がそれを解決できる方法を知っていますか? ありがとう