2012-03-16 9 views
8

Estoy tratando de enviar un formulario usando el método get. Anteriormente estaba intentando algo similar con form_tag y funcionaba, pero ahora, cuando cambié a una etiqueta form_for, parece que no funciona.Usando la etiqueta form_for con el método get

<%- filter_path = params[:action] == "index" ? posts_path : sneak_peek_posts_path %> 
<%= form_for(@post_filter, :url=> filter_path, :method => :get) do |f| %> 

Aparece un error sin rutas.

Respuesta

18

Puede pasar los atributos HTML sin procesar usando :html si es necesario. Para Carriles 3:

<%= form_for(@post_filter, :url=> filter_path, :html => { :method => 'GET' }) do |f| %> 

actualización y en los carriles 4, por sugerencia de @ andre.orvalho a continuación, el parámetro method se puede suministrar directamente:

<%= form_for(@post_filter, url: filter_path, method: :get) do |f| %> 
+0

gracias que funcionó. – nightf0x

+1

debe actualizar su respuesta a los rieles 4: <% = form_for (@post_filter, url: filter_path, method:: get) do | f | %> –

+0

cómo agregar argumentos de URL a la ruta url ??? –

2

¿Usted intentó

<%= form_for(@post_filter, :url=> filter_path, :html => {:method => :get}) do |f| %> 
Cuestiones relacionadas