MongoDB
 sql >> Base de données >  >> NoSQL >> MongoDB

Meteor Simple Schema - Lorsque l'option de modificateur est vraie, l'objet de validation doit avoir au moins un opérateur

Vous avez oublié d'ajouter new SimpleSchema là au début :

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

Aussi, je pense que votre utilisation des schémas imbriqués est un peu décalée. Seulement imbriquez les schémas lorsque vous devez en réutiliser un. Création d'un schéma séparé pour UserGamesPart a l'air horrible. Essayez ceci à la place :

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

C'est plus court et plus facile à lire.