Я пытаюсь создать очень простой сайт для отправки и получения параметров из URL (или ссылки), приложение должно поддерживать любое количество параметров, то есть http://localhost:3000/action=receive&controller=pages&email=mail%40site.com&name=Vinny, а затем иметь возможность получать/распечатать их.Ошибка маршрутизации Rails 3.2.1
Я думаю, что я нашел проблему на своем маршруте. В настоящее время она выглядит следующим образом:
match 'pages/*params' => 'pages#receive'
создать ссылку, посылающий Params, как это:
<%= link_to "Send Params", :action => "receive", :name => "Vinny", :email => "[email protected]" %>
Когда я нажимаю на ссылку, я получаю следующее сообщение об ошибке.
No route matches [GET] "/assets"
И URL выглядит следующим образом:
http://localhost:3000/assets?action=receive&controller=pages&email=mail%40site.com&name=Vinny
Примечание активов?.
Если мой маршрут вместо выглядит следующим образом:
match 'pages/:name/:email' => 'pages#receive'
Это работает, но тогда я ограничен указанным Params.
Любые советы о том, как решить эту проблему, были бы замечательными.
Так что жесткая кодировка маршрута к контроллеру 'pages' (с параметрами) работает, даже если you'r e доступ к контроллеру «активов»? Что делать, если вы специально ссылались на активы: match 'assets/* params' ... – BryanH
@BryanH Привет, нет Я не указал или не создал контроллер под названием Assets, у меня есть только один контроллер, Pages. Не знаете, почему Rails добавляет активы? на мой URL-адрес. Однако я попытался удалить «активы?» Из URL-адреса, и у меня возникла другая проблема маршрутизации. Я довольно ржавый с Rails, это может быть неправильный способ отправки произвольных параметров на мой контроллер? – Anders
@BryanH Хорошая идея, но это не помогло. :( – Anders