ruby on rails - formularios - Enviar un parámetro extra a través de un formulario en los carriles 3.
formularios anidados rails (3)
Llama a hidden_field_tag
directamente. Consulte: http://api.rubyonrails.org/classes/ActionView/Helpers/FormTagHelper.html#method-i-hidden_field_tag
Estos ayudantes existen para todos los tipos principales de campos de formulario, y son útiles cuando necesita ir más allá de los métodos de su modelo.
¿Hay alguna forma de enviar un parámetro extra a través de un formulario en los rieles 3?
Por ejemplo:
<%= form_for @post do |f| %>
<%= f.hidden_field :extraparam, :value => "22" %>
<% end %>
pero digamos: extraparam no es parte del modelo posterior.
Tengo un error de atributo desconocido en el método de creación del controlador cuando intento esto, ¿alguna idea?
(Quiero usar el valor param mismo en el controlador para alguna lógica adicional)
Lo siguiente me funcionó al pasar parámetros adicionales de la vista al controlador que formaban parte de mi modelo y no de mi modelo.
<%= hidden_field_tag :extraparam, value %>
Ejemplo de uso
<%= hidden_field_tag :name, "John Smith" %>
Ya Paul tiene razón. Hidden_field está asociado a su modelo, mientras que los campos _tag adicionales no lo están. No estoy seguro de tus necesidades, pero generalmente se recomienda en la comunidad de RoR para evitar pasar un montón de campos ocultos como lo harías en una aplicación php.
He visto algunos códigos en los que se estaban pasando las identificaciones en campos ocultos que los carriles se ocupan por sí solos si conoces las mejores prácticas y aprovechas al máximo el marco. Por supuesto, solo lo digo como información general, ya que a veces hay mejores maneras de lograr la misma funcionalidad. Buena suerte en tus aplicaciones.