sql >> Databasteknik >  >> NoSQL >> MongoDB

Meteor Simple Schema - När modifieringsalternativet är sant måste valideringsobjektet ha minst en operator

Du glömde att lägga till new SimpleSchema där i början:

Schemas.UserGamesPart = new SimpleSchema({
  public: {
    type: [String],
    defaultValue: []
  },
  private: {
    type: [String],
    defaultValue: []
  }
});
Schemas.UserGames = new SimpleSchema({
  game1: {
    type: Schemas.UserGamesPart
  }
});

Jag tycker också att din användning av kapslade scheman är lite off. Endast kapa scheman när du behöver återanvända ett. Skapa ett separat schema för UserGamesPart ser hemskt ut. Prova detta istället:

Schemas.UserGames = new SimpleSchema({
  game1: {
    type: Object
  }
  'game1.public': {
    type: [String],
    defaultValue: []
  },
  'game1.private': {
    type: [String],
    defaultValue: []
  }
});

Det här är kortare och lättare att läsa.




  1. Ignorera odefinierade värden som skickas i frågeobjektsparametern för Mongooses sökfunktion?

  2. Kan du ange en nyckel för $addToSet i Mongo?

  3. Hur får man dokumenten baserade på datumfilter (vecka, månad och anpassade datum) i MongoDB?

  4. Konvertera ObjectID till String i mongo Aggregation