2014-12-16 4 views
0

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

Неизвестное действие Действия «шоу» может не найден для UsersController

У моего файла route.rb нет маршрута для отображения, но он имеет индекс для индексации. Даже когда я ввожу localhost: 3000/users/index в свой url-бар, я все равно получаю ту же проблему.

Я искал ответ на этот вопрос часами и до сих пор не повезло.

EDIT:

Я взял совет маршрутизировать получить «пользователей/индекс» => «пользователи # индекс», но это не помогло. Index.html.erb находится в нужном месте. Я метод индекса, определенный в моем users_controller.rb

раздел моего routes.rb:

get 'users/index' => 'users#index' 
get 'users/sign_up_partial' 
post 'users/create' 
+2

Пожалуйста, разместите свои маршруты.rb, по крайней мере, соответствующие его части – tagCincy

+0

Поймите, что сообщение об ошибке является лучшим советом, который у вас есть. Где-то что-то связано с «показом». Наличие вашего файла index.html.erb не имеет отношения к ошибке. Я согласен, разместите файл routes.rb, нам нужно больше данных, чтобы помочь вам. –

+1

У вас есть ресурс пользователей, определенный в маршрутах до этого? –

ответ

0

Из моего опыта вы должны иметь в своем routes.rb файла:

get "users/index" => "users#index" 

Был ли ваш индекс, определенный в вашем users_controller.rb

и

убедитесь, что вы Создайте файл вида (views/users/index.html.erb)

1

Вы используете 'localhost: 3000/users/index'. Он будет перенаправлен на показ. Если вы сделаете рейк-маршрут, вы найдете

/users/:id(.:format) будет перенаправлять, чтобы показать действие контроллера пользователя, а в вашем случае, когда вы используете пользователей/индексируете его, рассматривая «индекс» как пользователь Я бы.

Для действия индекса вам просто нужно использовать URL-адрес localhost: 3000/users.

+0

Это сработало! Благодаря! – user3731130