2017-03-10 6 views
0

Gibt es eine Möglichkeit, die Anzahl der Felder in MongoDB/Mungo in einer einzigen Operation umzuschalten? Gerade jetzt wird mein Feld mit jedem Klick { $inc: { attending: 1 } } wie so inkrementiert. Ich möchte sagen, wenn das Feld attending bereits bei 1 ist, dann ändern Sie es zurück auf 0, und wenn es 0 ist, dann fahren Sie fort, um 1 wieder zu erhöhen. Wie kann ich das erreichen?

Antwort

0

Sie können versuchen, folgend ...

Collection.aggregate(
    [{ 
     attending: { 
     $inc: { 
       $cond: { 
       if: { $eq: [ "attending", 1 ] }, 
       then: 1, 
       else: -1, 
       } 
      } 
     } 
     }]); 

Bitte ersetzen Collection mit dem Namen Ihrer Sammlung