Je cherche à définir des valeurs pour deux modèles qui ont une association has_one en utilisant accept_nested_attributes_for, mais rien dans fields_for n'est affiché sur la vue.Formulaire avec des attributs imbriqués avec une association has_one ne fonctionnant pas dans Rails 3
J'ai confirmé le même code fonctionne sur Rails 2.x, et il fonctionne très bien quand c'est un has_many. Code ci-dessous.
Modèle
class Parent < ActiveRecord::Base
has_one :child
accepts_nested_attributes_for :child
end
class Child < ActiveRecord::Base
belongs_to :parent
end
Contrôleur
def new
@parent = Parent.new
@parent.build_child
end
Voir
<%= form_for @parent do |f| %>
<div class="field">
<%= f.label :name %><br />
<%= f.text_field :name %>
</div>
<% f.fields_for :child do |builder| %>
<%= builder.label :childname %>
<%= builder.text_field :childname %>
<% end %>
<div class="actions">
<%= f.submit %>
</div>
<% end %>
..Et après avoir copié et que regarder, qui est un nom de classe horrible.
Merci qui a fait l'affaire. Je ne pensais pas que c'était quelque chose d'aussi simple. – Saifis
Typo - devrait être f.fields_for –