Ruby on rails Rails与现有模型的关系

Ruby on rails Rails与现有模型的关系,ruby-on-rails,ruby-on-rails-3,ruby-on-rails-3.1,ruby-on-rails-3.2,Ruby On Rails,Ruby On Rails 3,Ruby On Rails 3.1,Ruby On Rails 3.2,我正试图将一些数据植入我的数据库,我有几个关于rails关系的问题 我正在努力提高我的理解基于 a。和你有很多属于你的关系。 可以用现有的模型来实现吗 例如,我已经创建了两个模型主题和课程。 要建立关系模型,我是否只需将主题id添加到课程中?或者,我是否需要为这种关系提供任何其他数据 我环顾四周,在下面的示例中,他们与现有模型一起创建了嵌套模型。 例如,他们在contact_属性中播种嵌套模型。 但是,如果子模型之前已经创建,并且在播种数据时显示与添加父模型id的这种关系是否足够,我不太确定如

我正试图将一些数据植入我的数据库,我有几个关于rails关系的问题

我正在努力提高我的理解基于

a。和你有很多属于你的关系。 可以用现有的模型来实现吗

例如,我已经创建了两个模型主题和课程。 要建立关系模型,我是否只需将主题id添加到课程中?或者,我是否需要为这种关系提供任何其他数据

我环顾四周,在下面的示例中,他们与现有模型一起创建了嵌套模型。 例如,他们在contact_属性中播种嵌套模型。

但是,如果子模型之前已经创建,并且在播种数据时显示与添加父模型id的这种关系是否足够,我不太确定如何解决这个问题

b。你和你属于很多人吗

根据has_many_和_belient_to关系,在rails指南中,还有一个额外的表。例如,科目和课程。我将不得不生成一个额外的表,以供参考。类似地,如果我要创建这样一个关系,那么在该表中植入数据是否足够,或者是否有其他步骤


如果有人能帮我解答我的疑问,我将不胜感激。

您最初的想法是正确的。考虑到如下关系,分配
主题id
就足够了:

关系:

class Subject < ActiveRecord::Base
  has_many :lessons
end
class Lesson < ActiveRecord::Base
  belongs_to :subject
end
Rake文件:

require "seed_data"

desc "Seed database"
task :seed_data do
  SeedData.run!
end
CLI:


只需首先在种子文件中创建父项,然后将父项的ID分配给子项。。。父项只需要先存在,然后才能创建子项。
种子数据将起作用,并应根据您的需要足够

嗨。我在模型中有关系,但如果我要播种数据,我不太确定我应该在哪里包括这个。lesson=lesson.create()subject=subject.create(:subject\u id=>@lesson.id)确定。我会把它放在一个脚本中,您可能会通过一个rake任务调用它。答案应该是所有东西都是端到端的。我唯一遗漏的是DB表的外观,但如果您已经有了关系,那么您似乎已经有了这种设置。非常感谢。我试试这个。
require "seed_data"

desc "Seed database"
task :seed_data do
  SeedData.run!
end
rake seed_data