设计可邀:未初始化的常量
我正在使用设计,工作正常,现在我尝试使用devise_invitable。 我正确安装了它,但是当我尝试访问时出现错误
HTTP://本地主机:3000 /用户/邀请/新
错误是:
Started GET "/users/invitation/new" for 127.0.0.1 at 2011-07-06 20:47:07 -0300 ActionController::RoutingError (uninitialized constant Users): Rendered /Users/Fernando/.rvm/gems/ruby-1.9.2-head/gems/actionpack-3.0.7/lib/action_dispatch/middleware/templates/rescues/routing_error.erb within rescues/layout (1.9ms) The routes looks like ok, and I dont know why it return this error.
路线:
accept_user_invitation GET /users/invitation/accept(.:format) {:action=>"edit", :controller=>"devise/invitations"} user_invitation POST /users/invitation(.:format) {:action=>"create", :controller=>"devise/invitations"} new_user_invitation GET /users/invitation/new(.:format) {:action=>"new", :controller=>"devise/invitations"}
实际上,您必须将邀请控制器放在app/controllers
下的users
目录中才能使用。
所以你最终得到:
/app/controllers/users/invitations_controller.rb
这样做将消除该unitialized constant
错误。
尝试改变
devise_for :users, controllers: { invitations: 'users/invitations' }
至
devise_for :users, controllers: { invitations: 'devise/invitations' }