无法自动加载常量JWTBlacklist,需要使用/home/sourabh/dev/celebration/app/models/jwt_blacklist.rb进行定义(LoadError)

Sou*_*nka 0 ruby-on-rails devise jwt

我的user.rb模型包含:

class User < ApplicationRecord

  devise :database_authenticatable, :registerable,
         :recoverable, :rememberable, :trackable, :validatable,
         :confirmable, :lockable, :timeoutable, :omniauthable,
         :jwt_authenticatable, jwt_revocation_strategy: JWTBlacklist

  def send_devise_notification(notification, *args)
    devise_mailer.send(notification, self, *args).deliver_later
  end
end
Run Code Online (Sandbox Code Playgroud)

我正在使用devise-jwt gem登录我的Rails api。

我的JWTBlacklist.rb模型包含:

class JwtBlacklist < ApplicationRecord
  include Devise::JWT::RevocationStrategies::Blacklist

  self.table_name = 'jwt_blacklist'
end
Run Code Online (Sandbox Code Playgroud)

mat*_*ewd 9

您的User班级正在寻找JWTBlacklist,但文件正在定义JwtBlacklist。您需要更改其中一个以匹配另一个。