Rails Restful Authentication:找不到UserObserver

时间:2009-03-12 17:51:21

标签: ruby-on-rails restful-authentication

我是Rails的新手,所以这可能是一个愚蠢的问题......

我按照github site for the plugin上提到的基本步骤(主要安装了插件,运行生成器,修改了environment.rb并在models目录中创建了UserObserver类)

我得到的错误是说它来自active_support / dependencies。 “'load_missing_constant':未初始化的常量UserObserver(NameError)。”有什么想法找不到用户观察者类?

4 个答案:

答案 0 :(得分:5)

这意味着它正在寻找一个名为“UserObserver”的常量(通常意味着它是一个类/模块)。它找不到它,因为您可能没有名为user_observer.rb的文件,通常位于app / models或app / observers中。

答案 1 :(得分:3)

您是否在environment.rb文件中包含了这两行?假设user_observer.rb位于app/observers

config.load_paths += %W( #{RAILS_ROOT}/app/observers )%
config.active_record.observers = :user_observer

答案 2 :(得分:1)

我不知道您的特定问题的解决方案,但您可以查看Bort,这是一个已经具有restful auth设置的骨架应用程序,并看看他们做了什么,你没有

答案 3 :(得分:1)

之前我遇到过这个问题。这是解决方案:

在使用生成器之前,请勿对环境进行任何更改并路由文件。首先使用发电机;然后添加......

map.signup'/ signup',: controller => 'users',:action => '新'  map.login'/ login',: controller => 'sessions',:action => '新'  map.logout'/ logout',: controller => 'sessions',:action => '销毁'

...等

应该这样做。