Вложенная форма с полиморфной ассоциацией без отображения полей - PullRequest
0 голосов
/ 10 декабря 2011

У меня есть модель с has_one и полиморфной ассоциацией, подобной этой:

class Disc < ActiveRecord::Base

  has_one :item, :as => :article, :dependent => :destroy
  accepts_nested_attributes_for :item
end

class Item < ActiveRecord::Base
      belongs_to :article, :polymorphic => true
end

Я пытаюсь создать вложенную форму, но отображаются только поля для диска, а не тедля элемента .Это моя форма:

<%= form_for(@disc) do |d| %>

<% d.fields_for :item do |f| %>
  <div class="field">
    <%= f.label :title %><br />
    <%= f.text_field :title %>
  </div>
  <div class="field">
    <%= f.label :stock %><br />
    <%= f.number_field :stock, :min => 0 %>
  </div>

  <div class="field">
    <%= f.label :description %><br />
    <%= f.text_area :description %>
  </div>
<% end %>

  DISC:
  <div class="field">
    <%= d.label :num_discs %><br />
    <%= d.number_field :num_discs %>
  </div>
  <div class="field">
    <%= d.label :audio %><br />
    <%= d.text_field :audio %>
  </div>
  <div class="field">
    <%= d.label :subtitles %><br />
    <%= d.text_field :subtitles %>
  </div>    
  <div class="actions">
    <%= d.submit %>
  </div>
<% end %>

В консоли не отображаются ошибки.

1 Ответ

1 голос
/ 25 декабря 2011

Попробуйте добавить = перед первым <% в строке <% d.fields_for :item do |f| %> . Я некоторое время не использовал erb, так что это может не быть проблемой

...