rails-关联这些模型的最佳/最有效方式是什么



在我的应用程序中,我有以下情况:

用户属于组组有许多用户(_M)

项目归属用户用户有多个项目(_M)

以下情况也是正确的:-每组将有一个基本情况-每个项目将有多个场景和一个基本案例(取决于项目用户所属的组)-Scenario和BaseCase是相同类型的对象(让我们称之为Data)-每个场景的默认值是组的基本情况值,但用户可以更改这些默认值以创建特定的场景

我不知道如何通过联想有效地捕捉所有这些关系,有人有什么想法吗?感谢

如果我理解正确,那么类似的东西

class User 
  belongs_to :group
  has_many   :projects
end 
class Group
  has_many :users
  has_many :projects, :through => :users
  has_one  :base_case
end
class Project
  has_many :scenarios
  has_one  :base_case
  belongs_to :user
  has_one :group, :through => user
  has_one :base_case, :through => :group
end  
class Scenario
  belongs_to :project
  has_one :base_case, :through => :project
  before_create do
    self.attributes = self.base_case.attributes.except(:group_id, ...)
  end
end
class BaseCase
  belongs_to :group
end

相关内容

  • 没有找到相关文章

最新更新