MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Einfaches Meteor-Schema – Wenn die Modifikatoroption wahr ist, muss das Validierungsobjekt mindestens einen Operator haben

Sie haben vergessen, new SimpleSchema hinzuzufügen dort am Anfang:

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

Ich denke auch, dass Ihre Verwendung der verschachtelten Schemas ein wenig daneben liegt. Nur Verschachteln Sie Schemas, wenn Sie eines wiederverwenden müssen. Erstellen eines separaten Schemas für UserGamesPart sieht schrecklich aus. Versuchen Sie stattdessen Folgendes:

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

Dies ist kürzer und einfacher zu lesen.