2015-07-07 10 views
0

Я использую Sidekiq с Authlogic, чтобы избежать нежелательных посетителей. Я следил за всем, начиная с этого link , но не работал должным образом. Я использовал ниже кодSidekiq с authlogic

# lib/admin_constraint.rb 
class AdminConstraint 
    def matches?(request) 
    return false unless request.cookie_jar['user_credentials'].present? 
    user = User.find_by_persistence_token(request.cookie_jar['user_credentials'].split(':')[0]) 
    user && user.admin? 
    end 
end 

# config/routes.rb 
require "admin_constraint" 
mount Sidekiq::Web => '/sidekiq', :constraints => AdminConstraint.new 

Если я вошел в систему как пользователь Admin, его работала должным образом. Если я вошел в систему как обычный пользователь или не зарегистрировался, он показывает Ошибка маршрутизации, когда я пытаюсь получить доступ к этой странице.

No route matches [GET] "/sidekiq" 

Я хочу удалить эту ошибку. Кто-нибудь, пожалуйста, помогите мне. Заранее спасибо.

Я использую рельсы 3.2.13 и рубиновые версии 2.1.5

ответ

0

Попробуйте следующую вещь, она должна работать.

class AdminConstraint 
    def matches?(request) 
    return false unless request.cookies['user_credentials'].present? 
    user = User.find_by_persistence_token(request.cookies['user_credentials'].split(':')[0]) 
    user && user.admin? 
    end 
end 

 Смежные вопросы

  • Нет связанных вопросов^_^