Ruby on rails 3 这两个模型之间的正确关联是什么?

Ruby on rails 3 这两个模型之间的正确关联是什么?,ruby-on-rails-3,activerecord,associations,Ruby On Rails 3,Activerecord,Associations,我正在建立一个博客,我是一个Rails新手。问题在于如何建立这些模型之间的联系:帖子和语言 只有两种语言,每个帖子只(属于/有)一种语言。我认为正确的做法是: class Post < ActiveRecord::Base belongs_to :language end class Language < ActiveRecord::Base has_many :posts end class Post

我正在建立一个博客,我是一个Rails新手。问题在于如何建立这些模型之间的联系:帖子和语言

只有两种语言,每个帖子只(属于/有)一种语言。我认为正确的做法是:

class Post < ActiveRecord::Base
  belongs_to :language
end

class Language < ActiveRecord::Base
  has_many :posts
end
class Post
这是正确的方法吗?因为认为一篇文章只有一种语言,而一种语言属于许多文章听起来更自然,但这种联系在rails中是不可能的,我错了吗


很抱歉问了这么一个新手问题。提前谢谢。

你说得对。如果您在多对一关系中有两个模型,您唯一的选择是在“一”模型上放置
has\u many
,在“多”模型上放置
属于
。因此,在您的情况下,您确实需要您提供的代码片段


请记住,这意味着您的
posts
表将包含一个
language\u id
列(感觉正确),您的代码将引用
post.language
language.posts
您是正确的。如果您在多对一关系中有两个模型,您唯一的选择是在“一”模型上放置
has\u many
,在“多”模型上放置
属于
。因此,在您的情况下,您确实需要您提供的代码片段

请记住,这意味着您的
posts
表将包含一个
language\u id
列(感觉正确),您的代码将引用
post.language
language.posts