在达到一定数量后清空Meteor数据库/集合
Empty out a Meteor database/collection after a certain number?
我可以说我是JS的新手,但掌握了一切是如何工作的-但我最近尝试跳入meteor,它似乎只是削减了大部分的代码快捷方式,我有困难的理解。
我试图清空流星数据库的前半部分,一旦它达到一定数量的项目,在本例中为100。我只有:
var printOut = MongoDatabase.find().count();
if (printOut > 100) {
//delete first 50 entries of the 100 items
}
提前感谢
首先为CreationDate找到一个截止值,然后删除该日期之前的所有值:
if (MongoDatabase.find().count() > 100){
cutoff = MongoDatabase.find({}, {fields: {CreationDate: 1, _id: 0}, sort: {CreationDate: -1 }, limit: 50}).fetch().pop().CreationDate
MongoDatabase.remove({CreationDate: {$lt: cutoff}})
}
这将在服务器上工作,但如果您尝试直接在客户端上执行此操作,您将得到以下错误:
"Not permitted. Untrusted code may only remove documents by ID. [403]"
所以如果你需要从客户端触发这个,使用一个流星。方法是最好的方法。
相关文章:
- 函数触发时清空数组
- 清空$_GET和$_POST,表单使用form.submit()
- 在 javascript 事件单击后清空输入
- 清空并附加元素的扩展高度
- 无法在提交之间清空数组
- 输入字段在 jQuery 的 slideUp()/slideDown() 上清空
- 提交按钮将清空输入的值
- 清空表中的所有字段
- javascript清空一个数组并进行验证
- 从DOM中清空一系列元素的最快方法是什么
- Sails.js beforeValidate()清空值参数
- 清空JS中的字符串
- 未捕获的类型错误:this.reset不是函数-在ajax调用后清空输入时出错
- 在设置标头之前清空localStorage
- 在 ASP.NET 中,您可以字符串.清空焦点中的文本框
- 如何清空数组
- 如何在下拉事件更改时使用 jquery 清除或清空列表框
- 我想清空 2 个输入类型文本的值,选中(框)
- 如何在以下代码中在 AngularJS 中成功提交后清空(或重置)表单上的所有输入字段
- 在达到一定数量后清空Meteor数据库/集合