mongoose 查询返回纯 javascript

Posted

技术标签:

【中文标题】mongoose 查询返回纯 javascript【英文标题】:mongoose query returns plain javascript 【发布时间】:2018-06-20 19:16:08 【问题描述】:

我对猫鼬有疑问 mongoose 查询不返回 mongoose 文档实例

这是我的架构:

const mongoose = require('mongoose');

var AlbumSchema = new mongoose.Schema(
    name: String,
    cover: String,
    releaseDate: Date,
, 
    timestamps: true,
);

AlbumSchema.index(name:'text');

export const Album = mongoose.model('Album', AlbumSchema);

这是我的查询:

import Album from './Album'

Album.create(
  name:"Eddie",
).then((album)=>
  console.log(album);
)

结果:

 _id: 5a575b82d921be1fc0aa8b44,
name: 'Hogtw',
createdAt: 2018-01-11T12:41:38.711Z,
updatedAt: 2018-01-11T12:41:38.711Z,
__v: 0 

【问题讨论】:

【参考方案1】:

如果您想在创建数据时使用 mongoose 对象,另一种方法是使用 .save() 方法,它将在回调中返回 mongoose 对象。

let album = new Album( name: 'Eddie' );
album.save(function (err, savedAlbum) 
if (err) 
// show err // 

else 
// show response

)

【讨论】:

上面的代码运行时没有得到mongoose对象?

以上是关于mongoose 查询返回纯 javascript的主要内容,如果未能解决你的问题,请参考以下文章

为啥 Mongoose 的 JavaScript 在同一行同时有返回和回调?

在 Mongoose 查询中使用 javascript Promise

js-bson:无法加载 c++ bson 扩展,在 Windows 的 mongoose 上使用纯 JS 版本

Mongoose.js findOne 返回查询元数据

Mongoose,使用 $lookup 的聚合查询返回 null?

为啥不能修改 Mongoose 查询返回的数据(例如:findById)