Pregunta

El uso de la misma forma parcial, en tanto crear y editar en mi caso nuevo y vista previa. miradas parciales algo como esto (yo uso HAML)

=form_tag ({:action => params[:action]},  :multipart => true)
  =text_field :newsletter, :title
  =text_area :newsletter, :body
  =file_field :newsletter,:attachment
  -if params[:action] == "preview"
     =button_to "select contacts and send", :action => "contacts"
  =submit_tag "save and preview"

pero en el html-salida es

...
<input type="submit" value="select contacts and send"/>
<input type="hidden" value="rwYnZlEpWV4dR89zjgprEALBYmP0xqM3lnKt9JDLyak=" name="authenticity_token"/>
<input type="submit" value="save and preview" name="commit"/>
...

¿por qué el button_to no genera el botón-para formar?

una solución es mantener el botón fuera de la parcial y sólo 1 por forma, pero ¿cómo puedo tener 2 botones en la misma forma?

editar: Otra solución sería una casilla de verificación oculto que se establece por javascript si se pulsa el button_to y envía el formulario, separándolos en el controlador

¿Fue útil?

Solución

HTML en realidad no permiten formas para anidar. Algunos navegadores, pero verán un comportamiento loco en otros. Es el HTML que está mostrando la salida de crudo o el DOM computarizada de Firebug?

La mejor forma de manejar este caso es mover el button_to fuera de la otra forma. Si estás bien con JS-únicas opciones, puede utilizar link_to :method => :post y el estilo del enlace para que parezca un botón.

Otros consejos

Al final utiliza el

:name => 'otheraction'

en el controlador comprueba entonces si cualquiera

params[:commit] or params[:otheraction]

estaba en el hash params

construyo una gema llamada button_link_to.

Utilizando el método button_link_to generará etiqueta botón pero sin anidado por etiqueta de formulario.

Sólo usarlo como link_to.

Puede obtener más información desde aquí: https://github.com/tonilin/button_link_to

Si desea ver una demostración: http://button-link-to.herokuapp.com/

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top