Rails - devise_token_auth - 在约束中访问当前用户

时间:2015-12-17 16:29:40

标签: ruby-on-rails ruby authentication devise token

我在我的rails-api项目中使用this gem

我试图根据用户角色限制某些路线。所以我创建了一个约束

  class BackendConstraint
    def self.matches?(request)
      current_user = request.env['warden'].user
      return false if current_user.blank?
      current_user.role?(:admin)
    end
  end

request.env['warden'].user始终为空。我错过了什么吗?

由于

1 个答案:

答案 0 :(得分:0)

我在使用鳍状肢建议的过滤器时遇到了同样的问题,但发现设计有一个单线解决方案:https://github.com/plataformatec/devise/wiki/How-To:-Define-resource-actions-that-require-authentication-using-routes.rb

例如

authenticate :user do
  resources :fjords, only: [:new, :create, :edit, :update, :destroy]
end
resources :fjords, only: [:index, :show]