Настройка действий для ActionController в Rails - PullRequest
0 голосов
/ 28 июля 2010

Я только что выполнил команду [script / generate scaffold User] для генерации моих файлов.Все страницы CRUD работают хорошо, так что это хорошо, и теперь я пытаюсь создать больше страниц.Я создаю метод в файле user_controller.rb следующим образом:

def login

# blahblah

end

Затем создается приложение / views / users /login.html.erb для просмотра.Когда я пытался получить к нему доступ через браузер [http://localhost:3000/users/login], выдается ошибка:

ActiveRecord :: RecordNotFound (не удалось найти пользователя с ID = логин): app / controllers / users_controller.rb: 16: в `show '

Я интерпретирую это как использование action show, и он не распознает вход в систему как действие.Я пропустил некоторые настройки для этого действия для работы?Я довольно новичок в Rails, поэтому я могу упустить что-то тривиальное.Спасибо!

ОБНОВЛЕНИЕ Я попытался использовать [скрипт / создать пользователя контроллера], затем создал методы действия в контроллере и его соответствующих представлениях.Кажется, работает как предсказано.В чем разница между этими двумя и что вызывает создание дополнительных методов действия при недоступности Script / Generate Scaffold?

1 Ответ

0 голосов
/ 28 июля 2010

Вам необходимо открыть файл маршрутов и добавить отображение коллекции в маршрут пользователя.В вашем случае строка может выглядеть следующим образом: map.resources :users, :collection => { :login => :get }

Проверьте http://guides.rubyonrails.org/routing.html для получения дополнительной информации о маршрутах Rails

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...