Estoy tratando de crear una forma anidada usando formtastic. He incluido mi código a continuación, pero tengo algunos problemas que también he enumerado a continuación. ¿Alguna sugerencia? Gracias.Usando Semantic_fields_for de Formtastic con una asociación has_many
# Home model
class Home < ActiveRecord::Base
has_many :home_members
accepts_nested_attributes_for :home_members, :reject_if => :all_blank, :update_only => true, :allow_destroy => true
end
# Form builder in members/new.html.erb
<%= semantic_form_for @home, :url => home_members_path(@home), :html => { :method => :post }, :remote => true do |f| %>
<%= f.inputs do %>
<%= f.semantic_fields_for :home_members do |h| %>
<%= h.input :name %>
<%= h.input :email %>
<%= h.input :birthday, :as => :string %>
<% end %>
<% end %>
# members_controller's new method; @home is set in a before filter
def new
2.times{ @home.home_members.build }
end
Se crea un usuario por defecto cuando una casa se guarda. ¿Cómo hago que el formulario muestre solo los registros recién creados y no el existente?
Si el # 1 no es posible, ¿cómo realizo la actualización de registro existente? Tengo update_only establecido en accept_nested_attributes_for, pero aún se crea un nuevo registro.
Estoy haciendo 2.times {@ home.home_members.build} en la acción del controlador. Cuando imprimo el tamaño de @ home.home_members obtengo 3 (uno ya existe) como se esperaba. ¿Por qué el formulario solo muestra 2 conjuntos de entradas, una de las cuales está poblada con los datos home_member existentes?
¿Todavía necesita respuestas a esta pregunta? Si encontró una solución, ¿podría publicar la respuesta usted mismo? –