Почему мой метод form_tag - это сообщение, когда я прошу получить?
Мой form_tag выглядит так:
<%= form_tag(:controller => "users", :action => "confirm", :method => "get") %>
вывод html:
<form accept-charset="UTF-8" action="/users/confirm?method=get" method="post">
Почему это делается?
Ответы
Ответ 1
Я думаю, потому что, когда он используется в этой форме, он предполагает, что все параметры - это параметры URL. Попробуйте.
<%= form_tag( '/users/confirm', :method => :get ) %>
В этом случае у вас есть два отдельных набора параметров, параметры URL и параметры тегов.
Ответ 2
Первые 2 параметра form_tag
равны url_for_options
и options
. Оба хеша. Таким образом, в вашем коде весь хэш принимается за url_for_options
. Итак, чтобы отделить параметры, вы должны сделать вот так:
<%= form_tag({:controller => "users", :action => "confirm"}, {:method => "get"}) %>
или
<%= form_tag({:controller => "users", :action => "confirm"}, :method => "get") %>
Обратитесь ссылка