2012-01-07 7 views
1

Deviseとカスタムルートを使用すると、ユーザーのログイン試行が間違っている場合(誤ったパス)、Railsはサインインページにリダイレクトされません。カスタムルートを使用しないと、正常に動作します。私はここで間違って何をしていますか?カスタムルートで無効な試行でサインインページにリダイレクトしないようにする

目標:私は

routes.rbをsign_in /の代わりに/ユーザー/サインインを使用したい:内部

devise_for :users, :controllers => { :sessions => "user_sessions" },:skip => [:sessions] do 
    get 'signin' => 'user_sessions#new', :as => :new_user_session 
    post 'signin' => 'user_sessions#create', :as => :user_session 
    delete 'signout' => 'user_sessions#destroy', :as => :destroy_user_session 
    get 'signout' => 'user_sessions#destroy', :as => :destroy_user_session 
end 

UserSessionsController /作成:

resource = warden.authenticate!(:scope => resource_name, :recall => "#{controller_path}#new") 

サーバーの出力をカスタムを使用した場合ルート/サイン:

Completed 401 Unauthorized in 2ms 

サーバーの出力使用してデフォルトルート/ユーザー/ sign_in:

Completed 401 Unauthorized in 2ms 
Processing by UserSessionsController#new as HTML 
Parameters: {"utf8"=>"✓", "authenticity_token"=>"2gqKTGWPv69HpVp7oSEg2tRDj5FU453my7LhKm0xu7E=", "user"=>{"email"=>"", "password"=>"[FILTERED]", "remember_me"=>"0"}, "commit"=>"SIGN IN"} 
Rendered user_sessions/new.html.erb within layouts/user_sessions (56.6ms) 
+0

このページの下部にはありますか? –

答えて

1

<%= form_for(resource, :as => resource_name, :url => admin_session_path) do |f| %> 

セッション/ new.html.erbファイルには、私のために働きました。

0

私はこの質問は数ヶ月前に投稿されています知っているが、私のホット同じ問題、と工夫SessionControllerを上書きし、数時間のためにそれを戦った後、私は最終的に何が起こっているのかを知り、解決策を共有することにしました。皆さんはそれをやる必要はありません。 '完了401 Unauthorized in XXms'というエラーは、SessionControllerのcreateメソッド内でlign:resource = build_resource(...)で発生します。また、リソースはサーバーに渡されないため、リソースを構築することはできません。今問題は、リソースがサーバーに渡されない理由ですか?私はAJAX呼び出しとしてsign_inを投稿するJQUERY mobileを使用しています.JQueryはAJAXを介してそのようなデータをアップロードすることはできません。工夫/セッションで /new.html.erbこのように見えるようにフォームを変更: 優は、データAJAX偽=を形成し、あなたのサインインに追加する必要が

form_for(resource, :as => resource_name, :url => user_session_url, html: {data: {ajax: false}}) do |f| 

ホープ・道の誰かを助けること。

<%= form_for(resource, :as => resource_name, :url => admin_session_path(resource_name)) do |f| %> 

をして:交換

関連する問題