Rails: Где настраивается переменная new_ * кое-что * _path? - PullRequest
11 голосов
/ 08 ноября 2010

Я создал скаффолд для 'messages', и new_message_path и edit_message_path (для использования в link_to) все настроены, но теперь я создал app / views / messages / sent.html.erb и хочу что-то вроде <% = link_to 'Отправлено', sent_message_path%>, но я не могу понять, как это сделать. Я получаю

undefined local variable or method `sent_message_path' for #<ActionView::Base:0x103117c50>

Ответы [ 3 ]

15 голосов
/ 09 ноября 2010

Эти методы создаются автоматически при определении маршрутов, а в случае маршрутов RESTful они следуют предсказуемому соглашению.

Запуск 'rake route' - полезный способ просмотра всех генерируемых маршрутов.

Рекомендую прочитать: http://guides.rubyonrails.org/routing.html

0 голосов
/ 09 ноября 2010

Обновите ваш route.rb, чтобы он содержал что-то вроде:

map.resources :messages, :collection => { :sent => :get }

Это создаст новый маршрут для отправленного действия с помощью GET.

0 голосов
/ 08 ноября 2010

Ответ на ваш вопрос находится по адресу http://railsapi.com/doc/rails-v2.3.8/classes/ActionController/Resources.html

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