кнопка с опцией GET method в Rails
у меня есть следующая кнопка, которую я перезаписал, чтобы сгенерировать запрос GET:
= button_to "Tutor", {:controller => "appointments", :action => "new",
:listing_id => @listing.id} , :method => :get
тем не менее, я все еще получаю запрос POST с дополнительными параметрами :метод:
Processing by AppointmentsController#new as HTML
Parameters: {"authenticity_token"=>"AWkL", "listing_id"=>"2", "method"=>"get"}
Я свой файл маршрутов, у меня есть:
resources :appointments
что я сделал не так?
спасибо.
3 ответов
кнопки не должны отправлять GET
запросы.
вы должны использовать link_to
вместо. Если вы хотите, чтобы он выглядел как кнопка, примените CSS. Вот хорошая статья: http://coding.smashingmagazine.com/2009/11/18/designing-css-buttons-techniques-and-resources/
Вы можете посмотреть на код драйвера UJS:
a\[data-method\]
здесь используется селектор:
поэтому должно работать следующее (не удалось его проверить):
button_to "Tutor", {...}, :html => { "data-method" => "get" }