node.js - 如何在 Mongoose 查询中使用 if 语句?

标签 node.js mongodb mongoose

我有一个名为 Feed 的 mongodb 集合,它有一个名为“type”的属性。根据该字符串,我想用 json 发送一个可更改的字段。例如,如果类型是“照片”,我想做类似的事情

 schema.find({number: "123456"},"body number",
 function(err, data) {

但是如果字符串是story,而不是photo;在同一个“schema.find”查询中,它应该创建一个带有“body url”而不是“body number”的 json。并且它们都应该使用相同的 json 传递。

  res.json(data);

举一个清楚的例子,我希望我的 json 是这样的。正如您所见,字段根据“类型”而变化。但它们实际上都在同一个集合中。

[
    {
        type: 'photo',
        number: 123456,
        url: 'asd.jpg',

    },
    {
        type: 'story',
        body: 'hello',
        number: 123456,

    }
]

最佳答案

所以基本上你想从 Feed 集合中返回某些文档字段,这些字段在变量中指定,例如“firstName pic 点照片”

是否有带有 story 字段的 Feed 文档?

Model.find()不创建任何架构。

也许可以编辑更多代码,以便我们能够理解该命令。

关于node.js - 如何在 Mongoose 查询中使用 if 语句?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12603815/

相关文章:

javascript - Mongoose 难以理解如何正确使用 promises/async await

android - android 中的 Socket.io 和 node.js 示例

mongodb - 如何使用replicaset url连接mongodb?

java - 为 MongoDB 淘汰 Hibernate/Mysql 或为 Java/Spring/Tomcat Web 应用程序淘汰 Couch

node.js - hasMany 关系环回

javascript - Node 绝对值不适用于 webpack

mysql - 在同一个应用程序中使用 MongoDB 和 MySQL(跨数据库连接?)

node.js - 在客户端和服务器 Mongoose 模型之间共享 typescript 接口(interface)

javascript - 引用错误: Schema is not defined

node.js - 如何根据填充中的多个条件过滤 Mongoose 中的结果?