Wie können mehrere Modelle in einer Schienenform gehandhabt werden?

Ich habe die folgenden Modelle

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

class SurveySection < ActiveRecord::Base
  belongs_to :survey
  has_many :questions
  accepts_nested_attributes_for :questions
end

class Question < ActiveRecord::Base
  belongs_to :survey_section
  has_many :answers
  belongs_to :question_group
  accepts_nested_attributes_for :question_group
  accepts_nested_attributes_for :answers
end

class Answer < ActiveRecord::Base
  belongs_to :question
end

class QuestionGroup < ActiveRecord::Base
  has_many :questions
end

Meine Steuerung:

 def new
    @survey = Survey.new
    survey_section = @survey.survey_sections.build
    survey_section.questions.build
  end

 def create
    @survey = Survey.new(survey_params)
    if @survey.save
      redirect_to @survey, notice: 'Super'
    else
      render 'new'
    end
  end

 def survey_params
      params.require(:survey).permit(:title, :description, survey_sections_attributes:[:id, :title, questions_attributes:[:id, :text, answers_attributes:[:id, :text]]])
    end

Wie ist es möglich, Daten in mehr als 3 Modellen zu speichern? Momentan kann ich aus meinen Umfrageformularen Daten in Umfrage, Umfrageabschnitt und Fragenmodell speichern. Aber ich weiß nicht, was ich in der Steuerung tun muss, damit ich Daten in den anderen Modellen speichern kann.

Antworten auf die Frage(4)

Ihre Antwort auf die Frage