当对同一模型有多个引用时,Rails 4.2迁移级别的外键定义

时间:2014-12-26 14:07:42

标签: ruby-on-rails-4

我理解如何定义两个表之间的简单关系,如下所述:

http://guides.rubyonrails.org/getting_started.html#adding-a-second-model

在这里: Rails 4.2 foreign key

但是,如何在迁移中定义对同一模型的多个引用?例如,使用之前的帖子说:

add_foreign_key :articles, :authors

并且您希望同时具有对作者的引用,并且说出也是作者的编辑者。在以前的rails版本的模型中会出现类似的结果:

belongs_to :editor, :class_name => "Author", :foreign_key => "editor_id"

还有一种语法可以在rails g scaffold级别定义它,还是我必须在之后修改迁移?

1 个答案:

答案 0 :(得分:1)

那只是这个:

add_column :articles, :author_id, :integer
add_column :articles, :editor_id, :integer
add_foreign_key :articles, :authors
add_foreign_key :articles, :authors, column: :editor_id, primary_key: "id"