2011-07-06 3 views
9

J'utilise un concept, qui fonctionne bien, maintenant j'essaie d'utiliser devise_invitable. Je l'ai installé correctement, mais je reçois l'erreur lorsque je tente d'accéderDevise Invitable: constante non initialisée

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

L'erreur est:

Started GET "https://stackoverflow.com/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. 

Routes:

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

Veuillez poster les entrées correspondantes.rb. – Dex

+0

Ok, fait ------- –

+2

jamais comprendre cela? – nicholaides

Répondre

8

Essayez de changer

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

à

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

En fait, vous devez tenir votre contrôleur invitations dans un répertoire users sous app/controllers pour que cela fonctionne.

Vous finiriez avec:

/app/controllers/users/invitations_controller.rb 

Faire cela va se débarrasser de cette erreur unitialized constant.

+0

fonctionne très bien maintenant, ty! –

Questions connexes