2017-07-08 5 views
0

Devise/Railsの基本認証が作成されています。既知の/確認済みのメール/パスワード値を持つユーザーにログインすることはできません。私がここまで続く普通のことから何も言わない限り、サインインのparamsショー正しいデータがサーバーに渡される:Rails 5.1.2とDevise 4.3.0でログインに失敗しました。401 Unauthorized(ユーザー確認済み)

がPOSTを開始 "/ユーザー/ sign_inを" :: 1のために2017年7月8日14時34分45秒-0400 処理で工夫により:: SessionsController#をHTMLとして作成します。パラメータ: {"utf8" => "✓"、 "authenticity_token" => "Fa7u5V ... lq81XEw =="、 "user" => {"email" => "[email protected]" => "[FILTERED]"、 "remember_me" => "0"} "パスワード" は、 "コミット" => "ログイン"}

サーバー出力はベース(ユーザの存在を示します既知の電子メール値を持つSELECT文):

ユーザー負荷(0.7ms)SELECT "users" WHERE "users"。 "email" = $ 1 LIMIT $ 2 [["email"、 "[email protected]"]、 "LIMIT"、 11]] @user: "401権限完了..." #]>

しかし、工夫は、このチェック文の直後に同じクエリを実行するとき、それは返し

ユーザー* "FROM" users "WHERE " users "" email "= $ 1 ORDER BY" users "。" id "ASC LIMIT $ 2 [[" email "、 ] "[email protected]"]、[ "LIMIT"、1]] 14ms に不正401を完成(ActiveRecordの:1.9ms)ここ

はroutes.rbをとuser.rbモデルファイルである:

======= routes.rb ======= 
Rails.application.routes.draw do 
    get "/" => "users#home" 
    devise_for :users 
    resources :users do 
     resources :posts 
    end 
end 

======= user.rb ======= 
class User < ApplicationRecord 
    devise :database_authenticatable, :registerable, :recoverable, :rememberable, :trackable, :validatable 
    has_many :posts 
    has_many :comments 
end 

この権限の不足の原因は何でしょうか?どんな助けでも大歓迎です!このようcuurent_userまたは

class UsersController < ApplicationController 
    before_filter :login_required, :only => [:method1,:method2] 
    ... 
end 

before_actionなどのステートメントを使用してコントローラの

答えて

0

ルックとアプリケーションコントローラは、メソッドを使用すると、認証を必要とするものとしてリストされて呼び出ししようとしているということかもしれないが、あなたはログインしていません。

あなたのコントローラの抜粋を、その中のメソッドとともに投稿することはできますか?

ルートが正しく定義されていない可能性があります。

関連する問題