Je tente d'implémenter des formulaires d'objets imbriqués pour mon site, en utilisant le blog de Ryan Daigle comme guide (http://ryandaigle.com/articles/2009/2/1/what-s-new-in-edge-rails-nested-attributes). Pour une raison quelconque, les champs de formulaire imbriqués n'apparaissent pas dans la vue.Problèmes avec les champs de formulaire imbriqués apparaissant
class Instruction < ActiveRecord::Base
has_many :steps
accepts_nested_attributes_for :steps
end
class Step < ActiveRecord::Base
belongs_to :instruction
end
<% form_for @instruction do |instruction_form| %>
<%= instruction_form.error_messages %>
<p>
<%= instruction_form.label :title %><br />
<%= instruction_form.text_field :title %>
</p>
<p>
<%= instruction_form.label :difficulty %><br />
<%= instruction_form.text_field :difficulty %>
</p>
<% instruction_form.fields_for :steps do |step_form| %>
<%= step_form.label :explanation, 'Explanation: ' %>
<%= step_form.text_field :explanation %>
<% end %>
<p><%= instruction_form.submit "Submit" %></p>
<% end %>
Quand je change instruction_form.fields_for :steps do |step_form|
à instruction_form.fields_for :step do |step_form|
, la forme rend, mais sur présentation, je reçois un « attribut inconnu: étape » erreur.
Ce que je fais semble correspondre au tutoriel. Que dois-je vérifier? Merci.
Je savais que je devais @instruction = Instruction.new ne savait pas que je devais faire @instruction .steps.build. En revenant sur le tutoriel, j'ai réalisé que j'aurais dû lire la section «extras». Merci pour l'aide! – sutee
fantastique! c'était un coup dans le noir, mais c'était la chose étrange que j'ai remarquée quand j'ai commencé à utiliser accept_nested_attributes_for acclamations! – BushyMark