【发布时间】:2014-11-30 07:10:35
【问题描述】:
这是完整的错误:
Can't verify CSRF token authenticity
User Load (0.3ms) SELECT `users`.* FROM `users` WHERE `users`.`id` = 5 ORDER BY `users`.`id` ASC LIMIT 1
(0.1ms) BEGIN
(0.2ms) COMMIT
Completed 500 Internal Server Error in 22ms
NoMethodError - undefined method `has_role?' for nil:NilClass:
app/controllers/application_controller.rb:8:in `authenticate_admin_user!'
我可以验证我当时是否以管理员用户身份登录。
这是触发错误的控制器:
class ApplicationController < ActionController::Base
def authenticate_admin_user!
unless current_user.has_role? :admin
flash[:alert] = "This area is restricted to administrators only."
redirect_to main_app.root_path
end
end
【问题讨论】:
-
您向您的应用发送了什么请求以及如何发送的?看起来您确实错过了一个 CSRF 令牌。
标签: ruby-on-rails devise