Hay una manera de representar una página erb en js.erb como este con: retirado => cierto en rieles:¿Cómo se renderiza un RAILS parcial con la variable local f en new.js.erb?
$('#invoice_against_lease').html('$("<%= j render(:file => 'invoice/new.html.erb') %>")');
Tenemos un _customer_quote_record parcial de esta manera:
<%= f.input :quote_id, :label => 'Quote#:', :collection => quotes_for_invoice(@customer), :include_blank => true %>
<%= f.hidden_field :_destroy %>
El parcial se representa en html.erb como este, con el paso constructor variable local:
<%= f.simple_fields_for :invoice_items do |builder| %>
<%= render 'customer_quote_record', :f => builder %>
<% end %>
Probamos el código abajo:
$('#invoice_against_lease').html('$("<%= j render(:file => 'customer_lease_record', :f => f) %>")');
Y el error es "ActionView::Template::Error (undefined local variable or method
f' ... "`
¿Hay una manera de hacer que el parcial anterior en js.erb?
Mismo error. f es el creador de formularios que solo vive en la vista. Mi pregunta es cómo pasar el generador de formularios al parcial en js.erb. – user938363
Ah, ya veo. No del todo seguro. ¿Podría usar la respuesta proporcionada aquí, http://stackoverflow.com/questions/371147/rails-ajax-my-partial-needs-a-formbuilder-instance, y simplemente usar 'fields_for' dentro del parcial en lugar de pasarlo? – Naty722
Intenté una solución similar (otra publicación similar sobre objeto de pase en lugar de generador de formulario). Funcionó parcialmente. Sin embargo, la asociación se perdió, lo que provocó el error al guardar el objeto principal. Obtuve un error: el objeto hijo no puede estar en blanco. No estoy seguro de qué causa la pérdida de asociación. – user938363