MongoDB
 sql >> डेटाबेस >  >> NoSQL >> MongoDB

लूपबैक.जेएस और मोंगोडीबी का उपयोग करके ऑटो-इन्क्रीमेंट

एक संग्रह बनाएं counters गुणों के साथ value और collection

{
  "name": "counters",
  "base": "PersistedModel",
  "idInjection": true,
  "options": {
    "validateUpsert": true
  },
  "properties": {
      "type": "number",
      "collection": "string"

  },
  "validations": [],
  "relations": {},
  "acls": [
    {
      "accessType": "*",
      "principalType": "ROLE",
      "principalId": "$everyone",
      "permission": "ALLOW"
    }
  ],
  "methods": []
}

अब मान लें कि आपका ऑटो-इन्क्रीमेंट संग्रह नाम tweets . है ।

इस मान को counters . में डालें ।

{
  "value" : 0, 
  "collection" : "tweet"
}
tweet.observe('before save', function (ctx, next) {

        var app = ctx.Model.app;

        //Apply this hooks for save operation only..
        if(ctx.isNewInstance){
            //suppose my datasource name is mongodb
            var mongoDb = app.dataSources.mongodb;
            var mongoConnector = app.dataSources.mongodb.connector;
            mongoConnector.collection("counters").findAndModify({collection: 'tweet'}, [['_id','asc']], {$inc: { value: 1 }}, {new: true}, function(err, sequence) {
                if(err) {
                    throw err;
                } else {
                    // Do what I need to do with new incremented value sequence.value
                    //Save the tweet id with autoincrement..
                    ctx.instance.id = sequence.value.value;

                    next();

                } //else
            });
        } //ctx.isNewInstance
        else{
            next(); 
        }
    }); //Observe before save..


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. mongoengine - स्कीमा सत्यापन के लिए अतिरिक्त क्षेत्रों पर ध्यान न दें

  2. वसंत बैच में MongoItemReader के साथ एकत्रीकरण क्वेरी का उपयोग कैसे करें?

  3. MongoDB, एकाधिक गिनती ($ मौजूद के साथ)

  4. Mongoose.js instance.save () कॉलबैक फायरिंग नहीं

  5. Django + Heroku + MongoDB एटलस (Djongo) =डेटाबेस त्रुटि बिना किसी अपवाद के