2014-01-29 2 views
2

У меня есть следующая ошибка при попытке выйти из самотестирования, который я только что установил.Ошибка маршрутизации Rails неинициализированная константа

http://0.0.0.0:3000/users/sign_out 

Routing Error 
uninitialized constant UsersController 

У меня нет файла users_controller.rb. У меня есть модель user.rb.

Это путь/URL я пытаюсь достичь:

destroy_user_session DELETE /users/sign_out(.:format)  devise/sessions#destroy 

Любая идея?

+2

Опубликовать ваши маршруты.rb –

+0

Какую проверку подлинности вы используете? Это «изобретать»? –

+0

Иван, он изобретает. routes.rb ресурсов: кредиты ресурсы: пользователи devise_for: пользователи ресурсов: статусы корня: «статусы # индекс» – Lut

ответ

8

Ваша проблема заключается в том, что devise_for :users омрачен resources :users

Rails жалуется UsersController, потому что он думает, что вы пытаетесь достичь users#show (если вы используете GET запрос) и users#destroy (при использовании DELETE)

enter image description here

Вы должны либо создать UserController, либо удалить resources :users с ваших маршрутов. И если вы решили создать UserController, переместите resources :users под номером devise_for :users. Построение маршрутов будет иметь приоритет.

Вы уверены, что вам нужно resources :users?

+0

Вы были правы! Мне не нужны ресурсы пользователей. Спасибо, Иван! – Lut

+0

Добро пожаловать! –

Смежные вопросы