未定义的局部变量或方法`load_and_authorize_resource'错误

时间:2013-12-19 04:44:31

标签: ruby-on-rails

NameError in HomeController#index 
undefined local variable or method `load_and_authorize_resource' for #<HomeController:0x3136e00>
Rails.root: D:/RailsInstaller/Ruby1.9.3/dynacan-master

我是Ruby On Rails的新手,&amp;我正在尝试在我的应用程序中实现该角色,我收到了上述错误。请帮助我摆脱这个错误&amp;给我其他的替代。 ASAP的

谢谢

1 个答案:

答案 0 :(得分:2)

我在cancan gem

中看到了类似的错误

如果您正在使用gem cancan,并且load_and_authorize_resource中有HomeController,那么它正在尝试加载不存在的Home模型。相反,尝试使用authorize_resource class: false,所以

class HomeController < ApplicationController
  authorize_resource class: false
  # rest of your code
end

有关在非RESTful控制器上使用cancan的更多信息,请参阅Wiki specifically about it

希望这有帮助