小编Jul*_*ius的帖子

如何将数据添加到 Firestore 中的嵌套对象

这是我当前在 Firebase 中的 Firestore。 在此输入图像描述

我需要帮助将数据添加到地图savedSearches

我需要使用.set()(因为用户savedSearches可能不存在)。

我当前的尝试如下所示:

database.collection('users').doc(uid).set({savedSearches: data}, {merge: true})
Run Code Online (Sandbox Code Playgroud)

但这不会添加savedSearches具有唯一 ID 的对象。

当我使用 Firebase 实时数据库时,我只是这样做:

database.ref('users/' + uid + '/savedSearches').push(data)
Run Code Online (Sandbox Code Playgroud)

这非常有效。我怎样才能在 Firestore 中做到这一点?

javascript firebase google-cloud-firestore

5
推荐指数
1
解决办法
2469
查看次数

MongoDB MongooseError:在初始连接完成之前无法调用`collection.aggregate()`

我的网站使用NextJS构建(并使用 Vercel 托管),在 NodeJS API 中使用 Mongoose 连接到我的 MongoDB 数据库。

我只有大约 1% 的用户遇到这个奇怪的错误:

MongooseError: Cannot call `hotels.aggregate()` before initial connection is complete if `bufferCommands = false`. Make sure you `await mongoose.connect()` if you have `bufferCommands = false`.
at NativeCollection.<computed> [as aggregate] (/var/task/node_modules/mongoose/lib/drivers/node-mongodb-native/collection.js:193:15)
at /var/task/node_modules/mongoose/lib/aggregate.js:998:18
at /var/task/node_modules/kareem/index.js:23:7
at processTicksAndRejections (internal/process/task_queues.js:77:11)
Run Code Online (Sandbox Code Playgroud)

hotels是正在显示的集合,我.aggregate()在 API 中调用它的函数)

我无法可靠地重现该错误,但我也遇到过这种情况。

我按照 NextJS 推荐的方式从他们的示例连接到 MonogoDB :

import mongoose from 'mongoose'

const MONGODB_URI = process.env.MONGODB_URI

if (!MONGODB_URI) {
  throw new Error( …
Run Code Online (Sandbox Code Playgroud)

mongoose mongodb node.js next.js

2
推荐指数
1
解决办法
1689
查看次数