Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/403.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/33.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 管理是mongodb中的删除(软删除),方法是将其传递到过滤器中,检查现有条件_Javascript_Node.js_Mongodb_Mongoose - Fatal编程技术网

Javascript 管理是mongodb中的删除(软删除),方法是将其传递到过滤器中,检查现有条件

Javascript 管理是mongodb中的删除(软删除),方法是将其传递到过滤器中,检查现有条件,javascript,node.js,mongodb,mongoose,Javascript,Node.js,Mongodb,Mongoose,我有一种情况,我必须检查公司名称和公司代码,如果两者都与现有的匹配,而不是它应该说的存在,或者如果其中一个在现有的数据库中匹配,那么它也应该说它存在。 我将如何在mongo中使用? 因此,如果数据接收isDeleted true,那么我还想在if部分中添加检查if not adding的内容,而不是检查id和update,那么我还想传递isDelete,这样,如果接收到以前删除的任何数据,那么它可以再次设置为false。 我将如何处理此删除场景 { "userId":"tt8389849

我有一种情况,我必须检查公司名称和公司代码,如果两者都与现有的匹配,而不是它应该说的存在,或者如果其中一个在现有的数据库中匹配,那么它也应该说它存在。 我将如何在mongo中使用?
因此,如果数据接收isDeleted true,那么我还想在if部分中添加检查if not adding的内容,而不是检查id和update,那么我还想传递isDelete,这样,如果接收到以前删除的任何数据,那么它可以再次设置为false。 我将如何处理此删除场景

{
    "userId":"tt838984984s",
  "company":{
  "addressee" : {
      "addressee" : "Ms.1", 
      "title_name" : "", 
      "salutation" : "Drks:", 
      "comments" : "", 
      "email" : "opus7ent@example.com", 
      "phone" : "123456666", 
      "fax" : "", 
      "extention_group" : "", 
      "ext" : ""
  }, 
  "abbreviation" : "", 
  "care_of" : "", 
  "address_1" : "HELLO2",
  "address_2" : "", 
  "address_3" : "", 
  "state" : "CA", 
  "zip" : "90024", 
  "is_deleted" : true, 
  "company_code" : "ABACAB", 
  "parent_company" : null, 
  "name" : "Abacab", 
  "createdBy" : "Data lolz", 
  "modifiedBy" : "Data", 
  "createdDate" : "2019-08-22T19:10:50.000+0000", 
  "modifiedDate" : "2019-08-22T19:10:50.000+0000", 
  "company_id_legacy" :1246, 
  "__v" : 0, 
  "is_registered_for" : false,

},
}


  is_deleted == false
    if(!isAdd) {
          filter["_id"] ={ "$ne" : id};
           }
        let filter = {
                 name: { $regex: new RegExp(`^${company.name}$`, 'i') },
                 company_code: { $regex: new RegExp(`^${company.company_code}$`, 'i') }
    }
    cModel.find(filter, function (err, docs) {
                            if (docs.length) {
                                result.error = "Name already exists: " + company.name;
                                console.log("Name already exists", null);
                                let resp = api_respose.getSuccessResponse(process.env.WEB_URI, result.error);
                                resolve(resp);
                            }
    else{
     ///saving here
    }
现在假设我传递了这个JSON,如果有
is_deleted=false
(这是在db中添加新条目时的JSON) 现在,如果数据库中存在一个带有
name
company\u code
的旧条目,该条目的
is\u delete=true
则会抛出一个错误,即名称已经存在


现在我的问题是如何解决这种情况?比如我想用新条目覆盖该文件,或者有其他方法吗?

您的实际需求是什么,因此您的
将提供您希望的检查名称或代码是否存在。除此之外,您的要求是不明确的。如果数据接收isDeleted==true,那么我还想添加if部分,检查是否未添加,而不是检查id和更新。然后我还想传递isDelete,这样,如果接收到之前被删除的任何数据,那么它可以再次设置为false。我将如何处理此删除场景?@Subburaj请再次检查问题什么是
isAdd
??首先,您的问题根本不清楚您的要求是什么。我的理解是,您有一些实体,其中公司名称和公司代码是唯一字段,然后您有一个名为isDeleted的字段,该字段将在您删除实体时设置。现在你想做什么?1.是否要添加具有相同公司名称和公司代码的新实体?2.是否只恢复已删除的实体--这意味着只需再次将isDeleted重置为false?