1. ホーム
  2. ruby-on-rails

[解決済み] Rails 3: Ajaxコールで "redirect_to "を使用するには?

2023-04-11 02:39:34

質問

以下は attempt_login メソッドは、ログインフォームが送信された後に Ajax を使用して呼び出されます。

class AccessController < ApplicationController
  [...]
  def attempt_login
    authorized_user = User.authenticate(params[:username], params[:password])

    if authorized_user
      session[:user_id] = authorized_user.id
      session[:username] = authorized_user.username
      flash[:notice] = "Hello #{authorized_user.name}."
      redirect_to(:controller => 'jobs', :action => 'index')
    else
      [...]
    end
  end
end

問題なのは redirect_to が機能しないことです。

どのようにこれを解決するのでしょうか?

どのように解決するのですか?

最後に、私はちょうど置き換え

redirect_to(:controller => 'jobs', :action => 'index')

をこれを使って

render :js => "window.location = '/jobs/index'"

で、問題なく動作します