首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >清除会话存储

清除会话存储
EN

Stack Overflow用户
提问于 2014-06-25 19:27:39
回答 1查看 699关注 0票数 0

我目前正在开发一个Node.js应用程序。我正在使用连接-蒙戈与快车来处理我的会话商店。我也在使用猫鼬进行其他数据库操作。

但是,当我重新启动服务器以测试新功能时,旧的会话数据仍然存在。这会导致数据不一致和一些棘手的错误。

因此,当服务器第一次启动时,我希望能够清除Mongo数据库中会话集合中的所有数据。

我知道,使用猫鼬,我可以做这样的事情来清理一个集合:

代码语言:javascript
复制
User.remove({}, function (error) {
  console.log('Emptied user collection')
});

但是,我不知道如何在不声明其模式的情况下获得对集合的引用。

有人知道我该怎么做吗?还是我应该采取完全不同的方法来处理这一切呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-06-25 21:51:58

好吧,我想我找到了一些解决问题的方法。

实际上,在不声明其模式的情况下获得对集合的引用是相当简单的。在我问这个问题之前我不知道我怎么没有在我的研究中找到这个.因此,这是我一直在问的问题的完整解决方案:

代码语言:javascript
复制
mongoose.connection.db.collection('sessions', function (error, collection) {
  if (error) {
    console.error('Problem retrieving sessions collection:', error);
  } else {
    collection.remove({}, function (error) {
      if (error) {
        console.error('Problem emptying sessions collection:', error);
      } else {
        console.log('Emptied sessions collection');
      }
    });
  }
});

但是,在我的例子中,我实际上想从数据库中删除所有数据,并试图一次完成一个集合(因为我知道如何清除一个集合)。相反,我只需要使用db.dropDatabase()

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

https://stackoverflow.com/questions/24416953

复制
相关文章

相似问题

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