我有以下型號:Rails的3.1.rc1和accept_nested_attributes_for
class Survey < ActiveRecord::Base
set_primary_key :survey_id # I'm using external DB
belongs_to :user #UPDATED
has_many :questions, :dependent => :destroy
accept_nested_attributes_for :questions
end
class Question < ActiveRecord::Base
set_primary_key :question_id # I'm using external DB
belogns_to :survey
end
如果我去軌控制檯,並保存模型:
>> params = {"title"=>"Survey 1", "questions_attributes"=>{"0"=>{"title"=>"Question 2"}}}
>> survey = User.first.surveys.build(params) #UPDATED
>> survey.questions.size
=> 2
>> survey = User.first.surveys.new(params)
>> survey.questions.size
=> 1
Rails的是在調查複製問題的資源。也許這是一個Rails 3.1的錯誤?該代碼是類同railscasts插曲197
好的,問題出在'build'函數中,因爲使用'new'效果很好。 – beagleknight 2011-05-25 11:02:19
對不起,我對代碼做了一些更改,因爲原始代碼非常不同。 – beagleknight 2011-05-25 11:04:26
該方法實際上是'accep_nested_attributes_for'。 – 2011-08-23 11:55:43