我是 Rails 的新手,我设计了一个与域实体相关的应用程序,例如:
- 用户属于许多组织
- 组织有很多用户
- 组织有许多应用程序
- 应用程序由组织开发
- 应用程序由同一组织的许多用户(开发人员)开发
- 用户是许多应用程序的开发者
这是上述关系的映射
class Organization < ActiveRecord::Base
has_many :memberships
has_many :users, through: :memberships
end
class User < ActiveRecord::Base
has_many :memberships
has_many :organizations, through: :memberships
has_many :application_developers
has_many :applications, through: application_developers
end
class Membership < ActiveRecord::Base
belongs_to :user
belongs_to :organization
end
class Application < ActiveRecord::Base
belongs_to :organization
has_many :application_developers
has_many :memberships, through: application_developers
end
class ApplicationDeveloper < ActiveRecord::Base
belongs_to :membership
belongs_to :application
end
有人可以验证上面的映射是否正确吗?请提供您的反馈。
如果你有比上面更好的设计,那将是非常可观的。