ruby – 如何在Mongoid中为子类设置集合名称?

class Foo
  include Mongoid::Document
end

class Bar < Foo
end

Foo.all返回Bars,Bar.all返回Foos.

我想把Foo和Bar放在不同的集合中.

我试过了

class Bar < Foo
  store_in collection: 'bars'

但得到了

Mongoid::Errors::InvalidStorageParent:
Problem:
  Invalid store_in call on class Bar.
Summary:
  The :store_in macro can only be called on a base Mongoid Document

使用Mongoid 4.0.2

解决方法

您还需要将Bar设为Mongoid文档.
class Bar < Foo
  include Mongoid::Document
  store_in collection: 'bars'

相关文章

validates:conclusion,:presence=>true,:inclusion=>{...
一、redis集群搭建redis3.0以前,提供了Sentinel工具来监控各...
分享一下我老师大神的人工智能教程。零基础!通俗易懂!风趣...
上一篇博文 ruby传参之引用类型 里边定义了一个方法名 mo...
一编程与编程语言 什么是编程语言? 能够被计算机所识别的表...
Ruby类和对象Ruby是一种完美的面向对象编程语言。面向对象编...