在我的应用程序中,我有两个模型,Task
和Guideline
。每个Task
可以有许多Guidelines
,并且每个Guideline
可以属于许多Tasks
。我如何建立这两个模型之间的关系,如果它甚至可能与ActiveRecord
?我曾经想过将其结构如下所示:Rails 4 - 如何构建这种模型关系?
class Task < ActiveRecord::Base
has_many :guidelines
end
class Guideline < ActiveRecord::Base
belongs_to :task
end
不过,我的理解是,belongs_to
将通过设置task_id
领域Guideline
关联到只有一个Task
。这意味着,如果给定的Guideline
分配给另一个Task
,则第一个关联将丢失。如果我错了,请纠正我。
我已查看过has_and_belongs_to_many
的关系,但Guidelines
不能有任何Tasks
;他们只能属于许多任务。我目前有一个系统,我在这个数组中存储了给定Task
所有选定的Guidelines
的ID,但是如果可能的话,我宁愿使用内置关联。
任何帮助将不胜感激。
多对多的关系? =) http://guides.rubyonrails.org/association_basics.html#the-has-many-through-association – Gerep