Devise Invitable: неинициализированная постоянная - PullRequest
9 голосов
/ 07 июля 2011

Я использую devise, который отлично работает, теперь я пытаюсь использовать devise_invitable. Я установил его правильно, но я получаю сообщение об ошибке при попытке доступа к

http://localhost:3000/users/invitation/new

Ошибка:

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"}

Ответы [ 2 ]

12 голосов
/ 21 мая 2012

На самом деле, вы должны поместить свой контроллер приглашений в каталог users в app/controllers, чтобы это работало.

Таким образом, вы получите:

/app/controllers/users/invitations_controller.rb

Это избавит от этой ошибки unitialized constant.

8 голосов
/ 27 июля 2011

Попробуйте изменить

devise_for :users, controllers: { invitations: 'users/invitations' }

до

devise_for :users, controllers: { invitations: 'devise/invitations' }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...