Ruby on rails 具有作用域的Rails设计因InvalidAuthenticationToken而失败
我们正在使用Rails 4.2.1和Desive的最新版本(3.4.1),尽管我相信其他版本也会出现同样的错误 自从我们将作用域添加到routes.rb之后:Ruby on rails 具有作用域的Rails设计因InvalidAuthenticationToken而失败,ruby-on-rails,ruby,ruby-on-rails-4,devise,Ruby On Rails,Ruby,Ruby On Rails 4,Devise,我们正在使用Rails 4.2.1和Desive的最新版本(3.4.1),尽管我相信其他版本也会出现同样的错误 自从我们将作用域添加到routes.rb之后: scope '/admin' do root to: "places#index" devise_for :users, controllers: { registrations: "users/registrations" } ... Desive无法登录或注销,出现以下错误: ActionController::Inv
scope '/admin' do
root to: "places#index"
devise_for :users, controllers: { registrations: "users/registrations" }
...
Desive无法登录或注销,出现以下错误:
ActionController::InvalidAuthenticityToken at /admin/users/sign_out.
只要我们去掉范围,一切都很好
我们尝试使用Desive的定制路线,但毫无帮助
注册\u controller.rb
类用户::注册控制器<设计::注册控制器
在\u操作之前:配置\u允许的\u参数
受保护的
def配置\u允许的\u参数
为(:注册)设计参数消毒剂。推送(:名字,:姓氏,:组织)
结束
结束
您应该尝试按以下方式定义您的设计范围:
devise_for :users
devise_scope :user do
scope '/admin' do
get "/your_route" ...
end
end
对于其余的路由,请分别应用“/admin”范围。Sei,您能否共享您的自定义用户/注册\u controller.rb文件?这可能有助于发现问题。即使我们从路由文件中删除users/registrations\u controller.rb,我们仍然会收到相同的错误。谢谢
devise_for :users
devise_scope :user do
scope '/admin' do
get "/your_route" ...
end
end