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
などのステートメントを使用してコントローラの