在rails中链接habtm对象的正确方法?

时间:2014-03-03 01:41:26

标签: ruby-on-rails ruby cakephp has-and-belongs-to-many

我有两个对象:调查和问题。它们建立在HABTM关系中,使得调查可以有多个问题,并且问题可以属于多个调查。

我是Ruby on Rails的新手,但对CakePHP有丰富的经验。我想知道将问题与轨道调查联系起来的正确方法是什么。

当我发布“调查”时,调用控制器的create方法,并且从我创建的脚手架中,我能够创建一个基本的调查对象。我现在要做的是传递一个Question_IDs数组,以便它们可以通过ActiveRecords Association自动相互关联。

这是我的迁移:

class CreateJoinTableQuestionSurvey < ActiveRecord::Migration
  def change
    create_join_table :questions, :surveys do |t|
      # t.index [:question_id, :survey_id]
      # t.index [:survey_id, :question_id]
    end
  end
end

对于cakePHP,我会采用一种方法遍历数组中的每个元素并创建一个新的Question_Survey对象,手动分配Question_IDSurvey_ID属性的值,以及将其保存到数据库中。在Rails中是否正确(如设计者所希望的)方式?如果没有,你将如何同时创建一个对象和一个关联?

1 个答案:

答案 0 :(得分:0)

This一步一步的程序将帮助您理解。此示例是为rails version&lt; = 3.2编写的。当您提出问题时,您还可以看到Railscast视频教程。回答(可能需要复选框)app。