Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/meteor/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何删除Meteor集合中与查询匹配的所有值?_Javascript_Meteor - Fatal编程技术网

Javascript 如何删除Meteor集合中与查询匹配的所有值?

Javascript 如何删除Meteor集合中与查询匹配的所有值?,javascript,meteor,Javascript,Meteor,我一直在构建Meteor React应用程序,但现在遇到了问题。我想删除我添加的所有“伪造”生成的数据。但它不起作用 我试过几种方法,从服务器端删除(通过控制台)到方法。但到目前为止,这些措施都没有奏效 所以我的问题是:如何删除集合中与以下查询匹配的所有数据: 删除({adminSpark:{$regex:'false',$options:'i'}); -->不确定此方法是否正确 我正在使用SimpleSchema+ValidatedMethod 目前完整的方法如下所示: export con

我一直在构建Meteor React应用程序,但现在遇到了问题。我想删除我添加的所有“伪造”生成的数据。但它不起作用

我试过几种方法,从服务器端删除(通过控制台)到方法。但到目前为止,这些措施都没有奏效

所以我的问题是:如何删除集合中与以下查询匹配的所有数据:

删除({adminSpark:{$regex:'false',$options:'i'}); -->不确定此方法是否正确

我正在使用SimpleSchema+ValidatedMethod

目前完整的方法如下所示:

export const emptyDatabase=new ValidatedMethod({
名称:“AllComments.remove”,
验证:新SimpleSchema({
事件:{type:Boolean}
}).validator(),
运行({event}){
删除({adminSpark:{$regex:'false',$options:'i'});
},

});选择器的有效性取决于代码是否可信。不受信任的代码只能使用元素的_id作为选择器删除元素。如果您不确定您的代码是否可信,我建议:

Collection.find({/*query here*/}).map(function(doc){
   Collection.remove(doc._id);
})
此外,如果您都订阅了要删除的元素,并且您有权删除这些元素,则应在空间中执行此操作。 :

受信任的代码可以使用任意Mongo选择器查找要删除的文档,并且可以通过传递匹配多个文档的选择器一次删除多个文档。它绕过由allow和deny设置的任何访问控制规则。如果您未通过回调,则将从remove返回已删除文档的数量

作为安全措施,如果省略(或未定义)选择器,则不会删除任何文档。如果确实要从集合中删除所有文档,请将选择器设置为{}

不受信任的代码一次只能删除由其_id指定的单个文档。只有在检查任何适用的允许和拒绝规则后,才能删除该文档。删除的文档数将返回回叫


选择器的有效性取决于代码是否可信。不受信任的代码只能使用元素的_id作为选择器删除元素。如果您不确定您的代码是否可信,我建议:

Collection.find({/*query here*/}).map(function(doc){
   Collection.remove(doc._id);
})
此外,如果您都订阅了要删除的元素,并且您有权删除这些元素,则应在空间中执行此操作。 :

受信任的代码可以使用任意Mongo选择器查找要删除的文档,并且可以通过传递匹配多个文档的选择器一次删除多个文档。它绕过由allow和deny设置的任何访问控制规则。如果您未通过回调,则将从remove返回已删除文档的数量

作为安全措施,如果省略(或未定义)选择器,则不会删除任何文档。如果确实要从集合中删除所有文档,请将选择器设置为{}

不受信任的代码一次只能删除由其_id指定的单个文档。只有在检查任何适用的允许和拒绝规则后,才能删除该文档。删除的文档数将返回回叫


在服务器上,您应该能够简单地执行以下操作:

comments.remove({ adminSpark : 'false' });
如果所有
false
值都是小写-这是完全匹配的


请问,为什么要将false存储为字符串而不是布尔值?

在服务器上,您只需执行以下操作:

comments.remove({ adminSpark : 'false' });
如果所有
false
值都是小写-这是完全匹配的


请问,为什么要将false存储为字符串而不是布尔值?

'false'
false
是不同的。第一个是字符串,后者是布尔值。如果您的
false
是布尔值,则
comments.remove({adminSpark:false})应该有效。使用_id策略搜索条件:
'false'
false
不一样。第一个是字符串,后者是布尔值。如果您的
false
是布尔值,则
comments.remove({adminSpark:false})应该有效。使用_id策略搜索条件:我没有,这是我的错误。在这种情况下,只需
注释。删除({adminSpark:false})正确?我没有,那是我的错误。在这种情况下,只需
注释。删除({adminSpark:false})正确吗?