加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – 总是通过新安装的Rails Devise获得401未经授权

发布时间:2020-12-16 19:25:38 所属栏目:百科 来源:网络整理
导读:我有一个新安装的Rails,我正在尝试使用Devise设置身份验证.据我所知,我有一个非常基本的设置应该工作,但是每当我尝试使用默认的Devise登录形式登录时,我会收到一个未经授权的错误.我确信我的证书是正确的,因为我在控制台中创建了一个要测试的用户,如下所示:
我有一个新安装的Rails,我正在尝试使用Devise设置身份验证.据我所知,我有一个非常基本的设置应该工作,但是每当我尝试使用默认的Devise登录形式登录时,我会收到一个未经授权的错误.我确信我的证书是正确的,因为我在控制台中创建了一个要测试的用户,如下所示:
User.new({:email=>'mark@markdavies.com.au',:priv_level => 'admin',:password=>'mypassword',:password_confirmation=>'mypassword'}).save

我的用户型号:

class User < ActiveRecord::Base

  # Include default devise modules. Others available are:
  # :token_authenticatable,:confirmable,# :lockable,:timeoutable and :omniauthable
  devise :database_authenticatable,:recoverable,:rememberable,:trackable,:validatable,:confirmable

  # Setup accessible (or protected) attributes for your model
  attr_accessible :email,:password,:password_confirmation,:remember_me,:priv_level,:unconfirmed_email
  # attr_accessible :title,:body

  has_one :supplier

end

我的日志:

Started POST "/admin/user/sign_in" for 127.0.0.1 at 2012-12-22 13:10:56 -0500
Processing by Admin::SessionsController#create as HTML
Parameters: {"utf8"=>"?","authenticity_token"=>"wYLsalxN9rTv8P8bvYuT0wZcvlFbu6b1SvoCyKtTCII=","admin_user"=>{"email"=>"mark@markdavies.com.au","password"=>"[FILTERED]","remember_me"=>"0"},"commit"=>"Sign in"}
User Load (0.2ms)  SELECT "users".* FROM "users" WHERE "users"."email" = 'mark@markdavies.com.au' LIMIT 1
(0.1ms)  begin transaction
(0.0ms)  commit transaction
Completed 401 Unauthorized in 69ms

有什么办法可以获得更多有关Devise失败的信息吗?当我在控制台中创建用户的加密使用不同于通过表单?

解决方法

那么这个沮丧的这个小小的运动竟然是RTFM的好教训.我已经设置了可以确认的Devise,当我创建了我的布局时,我忽略了插入以下几行:
<p class="notice"><%= notice %></p>
<p class="alert"><%= alert %></p>

…在入门指南中明确指出.当我插入这些我收到错误信息“您需要确认您的电子邮件地址登录之前.”

在控制台我设置了confirm_at = Time.now为用户,而voilà,我现在可以登录.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读