我定义了:
当我从数据库加载一个保存为Type 2的对象Type1时,我可以访问除one之外的所有属性(内容属性)。但如果我做object.toString()
该财产确实存在。
这怎么可能?
感谢。
答案 0 :(得分:1)
mongoose对象的属性始终与其架构相同。作为Type1
架构加载的属性为Type1
架构。
底层数据可能更大(因为Schema继承或仅仅是因为有人直接在MongoDB中存储了更多数据),但您无法仅使用属性从Type1
级别访问它。您可以尝试使用的方法(未测试)是object.getValue('content');
。另外,我认为object._doc
保存来自DB的真实数据。
最后一件事:object.toString
实际上是覆盖的,它显示整个对象的inspect
。这就是你看到底层数据的原因。