Boe*_*nne 8 collections inheritance ruby-on-rails mongodb mongoid
我读到mongoid中的继承,似乎所有继承的类都将保存在基类中,例如
class BaseClass
end
class ChildClass1 < BaseClass
end
class ChildClass2 < BaseClass
end
Run Code Online (Sandbox Code Playgroud)
似乎所有这些都存储在BaseClass集合中.
我实际上希望它们存储在单独的集合中,例如ChildClass1 - collection和ChildClass2 - collection.
这是不可能的。因为这是 Mongoid 中 STI 的概念,正如Mongoid 创建者 Durran 所解释的那样
如果您确实想保存在多个集合中,则需要使用模块包含,例如:
class BaseClass
include MyModule
end
class ChildClass1
include MyModule
end
class ChildClass2
include MyModule
end
Run Code Online (Sandbox Code Playgroud)