选择返回的字段
本课属于 Coddy Node.js 学习旅程的“使用 MongoDB 的数据库”单元。第 10 课,共 29 课。
列表页可能只需要标题,而不需要其他所有字段。投影用于选择数据库返回哪些字段。将它放在 find 的第二个参数中。值为 1 表示包含该字段。
await books.find({}, {projection: {title: 1, _id: 0}}).toArray();
// [{title:'Dune'}, {title:'Kindred'}, {title:'Emma'}]空筛选条件会保留所有图书。投影会更改每个返回的文档,而不会更改匹配的图书。即使你选择了其他字段,MongoDB 通常也会包含 _id;将它设为 0 就会省略它。Data 选项卡中存储的文档会保留所有原始字段。
挑战
简单这是一个小型练习项目。项目已提供设置,只编辑 exercise.js。
只返回每本书的 title 和 year。省略 _id 和 genre。运行并 GET /result:第一个结果是 {"title":"Dune","year":1965}。检查 Data 选项卡:genre 仍保存在存储中。
亲手试试
export async function exercise(books) {
return await books.find().toArray();
}
使用 MongoDB 的数据库中的所有课
自己练习: Express 在线编辑器