ruby on rails - 使用 JUST 'belongs_to' 与同时使用 'has_many' 和 'belongs_to' 的区别?

ruby on rails - difference between using JUST 'belongs_to' versus using BOTH 'has_many' and 'belongs_to'?

在一个模型上只使用 belongs_to 与在一个模型上使用 has_many 和在另一个模型上使用 belongs_to 有什么区别?

举个例子:

class Author < ActiveRecord::Base
end

class Book < ActiveRecord::Base
  belongs_to :author
end

对比

class Author < ActiveRecord::Base
  has_many :books
end

class Book < ActiveRecord::Base
  belongs_to :author
end

谢谢。

猜测每个方法将有助于向关联的 class

添加一组不同的附加方法

例如,如果必须猜测,使用 belongs_to,您将在某种程度上获得对 Book 的实例调用关联的能力:

@book.author

with has_many,如果我不得不猜测,你会,部分地,能够在 Author 的实例上调用关联:

@author.books

另外,http://api.rubyonrails.org/classes/ActiveRecord/Associations/ClassMethods.html#method-i-belongs_to

http://api.rubyonrails.org/classes/ActiveRecord/Associations/ClassMethods.html#method-i-has_many

以防这些可能感兴趣