0

アプリのわかりやすい転送機能を作成しましたが、投稿要求で失敗します。シナリオは次のとおりです。

  1. ユーザーが保護されたページにアクセスしようとしています
  2. アプリストアの URL とログインページへのリダイレクト
  3. ユーザーがログインし、アプリが保存された URL にリダイレクトする

sessions_helper.rb

def store_location
  session[:return_to] = request.url
end
def redirect_back_or(default)
  redirect_to(session[:return_to] || default)
  session.delete(:return_to)
end

application_controller.rb

def require_login
  unless !signed_in?
    store_location
    redirect_to signin_path
  end
end

sessions_controller.rb

def create
  ..
  sign_in user
  redirect_back_or root_path
  ..
end

リクエストを投げるまで、これはうまくいきPOSTます。

  1. ユーザーposts#newがフォームにアクセスして送信する
  2. アプリストアの URL とログインページへのリダイレクト
  3. ユーザーがログインし、アプリが保存された URL にリダイレクトされますが、失敗します

AbstractController::ActionNotFound at /forums/7/posts

The action 'index' could not be found for PostsController

unless action_name = method_for_action(action_name)
  raise ActionNotFound, "The action '#{action}' could not be found for #{self.class.name}"
end

この問題を回避する方法はありますか?

4

0 に答える 0