【问题标题】:How to delete post from mongoDB based on if statement?如何根据 if 语句从 mongoDB 中删除帖子?
【发布时间】:2015-03-04 00:59:58
【问题描述】:

在 Meteor 框架中工作,我有 Posts.Collection 帖子,你可以投票或反对,我想在投票得分为 -5 时删除帖子。

Template.postList.helpers({
	post: function() {
		if (post.score < 5) {
			Posts.remove(post._id);
	    };
    }
});

分数通过服务器更新。我还需要通过服务器删除帖子吗?

【问题讨论】:

    标签: javascript mongodb collections meteor


    【解决方案1】:

    好吧,您可以在您投反对票的事件中执行此操作,它会自动获得删除..

    Template.example.events({
      'click #downVoteButton':function(e,t){
        //on the update.
        Posts.update({_id:this.id},{$inc{score:-1}},function(err,result){
         if(!err){
           var post = Posts.findOne({_id:this._id})
           if(post.score >= 5){
             Posts.remove({_id:this._id})
            }
          }
        })
      }
    })
    

    但是如果你不相信反对票,并且你想在删除他后查看帖子

    您可以在一些迷你管理员后端上查找(帮助程序),在那里您将获得超过 5 个反对票的所有帖子,您检查反对票是否有效,然后继续删除它们。

    或者为此使用Hooks

    即时或在after.insert 上进行查找,有很多选项可以做到这一点,但我更喜欢迷你管理员的想法

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-07-10
      • 2012-09-04
      • 2020-03-18
      • 1970-01-01
      • 2018-07-09
      • 2019-02-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多