你能告诉我如何添加has_many关系吗?

时间:2015-10-21 08:01:18

标签: ruby-on-rails ruby-on-rails-3.2

你能否告诉我如何在创建模型后添加has_many关系,并且在创建模型时我们没有指定任何关系或参考?请指导我,我解决了创建模式后如何进行迁移的问题模型是一个用于"页面,rb"和其他是" subject.rb"

2 个答案:

答案 0 :(得分:2)

  1. 创建新迁移以添加外键

    例如:rails g migration AddSubjectIdToPages

  2. 运行迁移
  3. 编辑模型,并添加关系。

答案 1 :(得分:1)

要添加到Santhosh的答案,您需要以下内容:

#app/models/page.rb
class Page < ActiveRecord::Base
   belongs_to :subject
end

#app/models/subject.rb
class Subject < ActiveRecord::Base
   has_many :pages
end

您需要使用following database setup来实现此目的:

enter image description here

因此,回答你的问题:

$ rails g migration AddSubjectIDToPages

#db/migrate/add_subject_id_to_pages______.rb
class AddSubjectIdtoPages < ActiveRecord::Migration
   def change
      add_column :pages, :subject_id, :integer
   end
end

$ rake db:migrate