我正在使用Rails 4,包括设计,监护,声明授权和omniauth。
当我运行rails服务器尝试测试我的初始设置时,我收到一条包含所有初始页面的错误消息。
当我输入localhost:3000时 - 我收到一条错误,上面写着“无效策略some_external_strategy”,错误将我引导到应用程序控制器 - 使用此方法:
def set_current_user
Authorization.current_user = current_user
end
对于作为脚手架生成的一部分自动创建的每个视图,我都会遇到相同的错误。
当我尝试导航到localhost:3000 / home / index时,我收到一条错误消息:“没有路由匹配[GET]”/ home / index“
我的路线文件在第一行中有以下内容:
root :to => 'home#index'
我有一个home_controller.rb,其中包含以下代码:
class HomeController < ApplicationController
def index
end
end
对于如何解决这个问题的任何想法或建议都将非常感激。
非常感谢提前。
答案 0 :(得分:0)
根据我的理解设计,宝石对于身份验证而言非常舒适,而不是授权。如果您想进行用户授权,我建议您使用 CanCan gem,而不是使用设计。这很简单&amp;有效的宝石用于授权目的。
答案 1 :(得分:0)
您是否修改了config/initializers/devise.rb
?当我取消注释Warden配置部分时,我遇到了同样的错误,其中包括以下几行:
config.warden do |manager|
manager.intercept_401 = false
manager.default_strategies(scope: :user).unshift :some_external_strategy
end