2015-09-16 6 views
5

मेरे पास एक मीन स्टैक प्रोग्राम के भीतर मोंगोओस्टिक सेटअप है। सबकुछ ठीक से काम करता है सिवाय इसके कि जब मैं mongodb से दस्तावेज़ हटाता हूं तो इसे elasticsearch अनुक्रमणिका में हटाया नहीं जाता है। इसलिए हर बार जब मैं एक खोज करता हूं जिसमें आइटम हटाएं, हटाए गए आइटम को वापस कर दिया जाता है लेकिन जब यह हाइड्रेटेड होता है तो शून्य होता है। क्या ईएस इंडेक्स से मोंगोसास्टिक हैंडल हट रहा है? क्या मुझे एक इंडेक्स रीफ्रेश प्रोग्राम करना है?मैंगोसास्टिक के माध्यम से elasticsearch अनुक्रमणिका से डेटा नहीं हटाया जा रहा है?

var mongoose = require('mongoose'); 
var mongoosastic = require("mongoosastic"); 
var Schema = mongoose.Schema; 

var quantumSchema = new mongoose.Schema({ 
    note: { 
     type: String, 
     require: true, 
     es_indexed: true 
    }   
}); 

quantumSchema.plugin(mongoosastic); 

var Quantum = mongoose.model('Quantum', quantumSchema); 

Quantum.createMapping(function(err, mapping){ 
    if(err){ 
    console.log('error creating mapping (you can safely ignore this)'); 
    console.log(err); 
    }else{ 
    console.log('mapping created!'); 
    console.log(mapping); 
    } 
}); 
+0

क्या आपके पास पोस्ट करने के बाद से कोई भाग्य है? मुझे भी यही समस्या हो रही है। –

उत्तर

0

मैंने डेटा को हटाने के तरीके को बदलकर समस्या हल की।

मैं उपयोग कर रहा था:

Quantum.findByIdAndRemove(quantumid) 

मैं करने के लिए इसे बंद:

Quantum.findById(quantumid, function(err, quantum) { 
     quantum.remove(function(err, quantum) { 
     if (err) { 
      console.log(err); 

      return; 
     }     
     }); 
    }); 

मैं इस काम के लिए कारण अनुसंधान नहीं किया है, लेकिन यह समस्या हल हो और मैं पर ले जाया गया।

0

मैं जानता हूँ कि mongoosastic के किस संस्करण का उपयोग कर रहे न, लेकिन मैं [email protected] का उपयोग करें और जब भी मैं इसे या तो हटाने Model.findByIdAndRemove या Model.remove उपयोग करते हुए मेरे अनुक्रमित दस्तावेज़ हटा दिया जाता है। इसलिए आप जिस दस्तावेज़ को हटाते हैं उसे चेक करने का प्रयास करें।

संबंधित मुद्दे