2011-01-18 29 views
1

當我使用accepts_nested_attributes_for時,相應的字段不再顯示在我的視圖中。acceptable_nested_attributes_for保持表單域不會顯示

class Survey < ActiveRecord::Base 
    has_many :questions 
    accepts_nested_attributes_for :questions 
end 

class Question < ActiveRecord::Base 
    belongs_to :survey 
end 

然後在我的觀點:

<%= form_for @survey do |f| %> 
    <%= f.fields_for :questions do |question_fields| %> 
    <%= question_fields.text_area :text %> 
    <% end %> 
<% end %> 

如果我刪除accepts_nested_attributes_for那麼text_area節目,但如果我把它...什麼都沒有得到呈現。

我運行的Rails 3.0.3

回答

4

您是否在控制器中構建了問題?

喜歡的東西

@survey.questions.build

這將構建一個相關的問題,所以只有一個文本區域會顯示出來。它運行在一個循環中像

2.times { @survey.questions.build }

它會出現2次。

1

是否要創建新的問題,或者是你中編輯呢?如果您正在爲此調查創建新問題,則可能需要嘗試以下內容:

 
<= f.fields_for @survey.questions.build do |question_fields| %>