Typus与现有的设计模型得到401未经授权的错误



我是RubyonRails的新手,在使用design配置typus时遇到了问题。

我有一个Rails REST应用程序(使用Rails_api构建),它使用design来进行身份验证。目前,我正在开发一个新的Rails应用程序,该应用程序应该是使用typus的REST应用程序的管理页面。最终,我的目标是让这个管理应用程序访问与之前构建的REST应用程序相同的数据库,同时使用REST应用程序的现有设计模型。然而,即使用户存在于数据库中,我仍不断收到401未授权消息。

确切地说,我在REST应用程序中有一个设计模型Account,我想在我的管理应用程序中使用这个特定的设计模型作为设计模型。我将模型Account(与其他模型一起)从REST应用程序复制到新的管理应用程序中,然后,我按照这一点将typus配置为使用design进行身份验证,但不生成新的design模型:

rails generate devise:install
rails generate typus
# config/initializers/typus.rb
Typus.setup do |config|
  config.authentication = :devise
  config.user_class_name = "Account"
end
# edit the devise model: Account
require 'typus/orm/active_record/instance_methods'
class Account < ActiveRecord::Base
  devise :database_authenticatable, :registerable,
     :recoverable, :rememberable, :trackable, :validatable,
     :omniauthable, :confirmable
  include Typus::Orm::ActiveRecord::InstanceMethods
  def locale
    ::I18n.locale
  end
  def role
    Typus.master_role
  end
end
# routes.rb
Rails.application.routes.draw do
  devise_for :accounts
end
# initializers/devise.rb
# make secret_key the same with REST app's secret_key
config.secret_key = 'identic-secret-key-with-rest-app'

当我运行服务器并尝试使用数据库中的现有用户(REST应用程序中的用户)登录时,它总是在服务器控制台中说401 Unauthorized。我的配置中遗漏了什么吗?甚至我的方法是可行的?

如果我为管理应用程序生成一个新的设计模型,效果会很好。

您正在您的帐户模型中添加:confirmable,当您注册时,它会向您发送确认邮件以确认您的电子邮件,如果您在未确认的情况下登录,它将引发未经授权的错误。

相关内容

  • 没有找到相关文章

最新更新