UnhandledPromiseRejectionWarning: MongoWriteConcernError и ValidationError - PullRequest
1 голос
/ 27 мая 2020

Мой код показывает следующую ошибку MongoWriteError, когда я ее открываю, а через некоторое время - ValidationError, когда я добавляю данные в свое приложение со списком дел.

UnhandledPromiseRejectionWarning: ValidationError: User validation failed: username: Path username is required.

UnhandledPromiseRejectionWarning: MongoWriteConcernError: No write concern named 'majority/todolistDB' 

Это часть itemsSchema:

  var itemsSchema = new Schema({
  username:  {
      type: String,
      required: true,
      unique: true,
      trim: true,
      minlength: 3
  },
},
{
  timestamps: true
});

Это спасло меня от MongoWriteError, но некоторое время работает.

Это серверная часть:

mongoose.connect("mongodb+srv://cluster0-hjbfj.mongodb.net/test? 
  retryWrites=true&w=majority/todolistDB", {
  dbName: 'todolistDB',
  user: 'USERNAME',
  pass: 'PASSWORD',
  useNewUrlParser: true,
  useUnifiedTopology: true,
    useCreateIndex: true
   })
 .then(() => {
 console.log("MongoDB Connected");
 })
  .catch((error) => {
 assert.isNotOk(error,'Promise error');
  });

...

app.post("/", function(req, res){


 const itemName = req.body.newItem;
 const listName = req.body.list;

 const item = new Item({
 name:itemName
  }); 
     if(listName === "Today"){
      item.save();
      res.redirect("/");
    }else{
    List.findOne({name: listName}, function(err, foundList){
    foundList.items.push(item);
    foundList.save();
      res.redirect("/" + listName);
    });
    }
      });
...