Как правильно настроить адрес для формы? - PullRequest
2 голосов
/ 26 января 2012

У меня есть контроллер my_controller и в нем действие my_action. В представлении my_action я создал форму и вручную установил следующее: <%=form_tag('/photos/create') do%>. Когда я отправляю эту форму этому действию в photos контроллере, я получаю ошибку

No route matches [POST] "/photos/create"

(Очевидно, действие create существует в photos контроллере) У меня вопрос, почему я получаю эту ошибку, когда это действие существует и как я могу это исправить (как правильно настроить адрес в for вручную)?

1 Ответ

2 голосов
/ 26 января 2012

Потому что ваш маршрут не правильный.Действие create для фотографий должно выполняться по маршруту /photos вместо POST.Вы можете проверить это, запустив rake routes в командной строке, чтобы получить список всех маршрутов и то, как они сопоставлены с действиями вашего контроллера.

Попробуйте вместо этого:

<%=form_tag(photos_path, :method => :post) do%>

Длядополнительная информация: http://guides.rubyonrails.org/routing.html

...