首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用猫鼬鉴别器查询MongoDB集合

如何使用猫鼬鉴别器查询MongoDB集合
EN

Stack Overflow用户
提问于 2017-04-26 21:38:12
回答 1查看 1.5K关注 0票数 1

我试图使用mongoose从Mongo数据库中读取数据,其中模型使用了鉴别器继承功能,但是DB中的文档都是由另一个服务(使用Java Mongo驱动程序)插入的,该服务不使用mongoose或其鉴别器。当我尝试从DB读取时,使用子类模型(那些使用区分器函数的查询)的所有查询都返回空数组。我认为这是因为猫鼬希望这些文档包含一个鉴别键,但是插入文档的服务不知道鉴别键,因此没有在mongoDB文档上设置它们。

如何创建模型并使用判别器函数,以便它们仍然可以查询由其他服务插入的这些文档?

对于更多的上下文,我想使用鉴别器,因为继承允许我清晰地构造我正在创建的模型的字段,并定义特定于模型的静态方法,而且它允许我不编写重复的代码。如果有更好的方法来完成这些目标,而不使用猫鼬的内置鉴别模式,请分享!

EN

回答 1

Stack Overflow用户

发布于 2017-06-01 05:36:00

根据文档的说法:

猫鼬告诉不同鉴别器模型之间的区别的方式是“鉴别器键”,默认情况下是__t。猫鼬将名为__t的字符串路径添加到架构中,用于跟踪该文档的实例是哪个鉴别器。

另外,猫鼬将带有鉴别器的文档保存到单个集合中。

因此,为了访问文档,需要保存__t参数,并检查是否将具有相同鉴别器的架构保存到单个集合中。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43644937

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档