has_one关联是否需要外键引用

时间:2013-02-11 13:30:28

标签: activerecord foreign-keys

class Foo < ActiveRecord::Base {
  has_one :bar
}

架构中的bar表是否需要对foo_id进行外键引用?

1 个答案:

答案 0 :(得分:0)

http://api.rubyonrails.org/classes/ActiveRecord/Associations/ClassMethods.html

是。 bar会有FK到Foo

class Bar < ActiveRecord::Base {
  belongs_to :foo 
 }
架构将是:

CREATE TABLE bars (
  id int,
  foo_id int,
  .....

}

has_one和has_many都定义了FK关系,has_one返回一个单数对象,has_many返回一个集合。