को नेस्टेड वस्तु सहेज नहीं सकता मैं निम्न स्कीमा की स्थापना की है:नेवला: नेस्टेड मॉडल
var TradeSchema = new mongoose.Schema({
channel: String,
trade: {
tradeid: Number,
timestamp: Date,
datetime: Date,
marketid: Number,
marketname: String,
quantity: Number,
price: Number,
total: Number,
type: String
}
});
var MarketSchema = new mongoose.Schema({
name: { type: String, index: true },
trades: [TradeSchema]
});
व्यापार स्कीमा वास्तव में "व्यापार" संपत्ति की तरह नेस्ट की आवश्यकता नहीं है, लेकिन मैं मैं इसे एएपीआई से प्राप्त कर रहा हूं और अभी के लिए मैं इसे ठीक से रखना चाहता हूं जैसा कि मुझे मिला।
समस्या है, जब मैं कच्चे जे एस वस्तु ले:
{
channel: 'trade.5',
trade: {
tradeid: '86554823',
timestamp: 1425569593,
datetime: '2015-03-05 10:33:13 EDT',
marketid: '5',
marketname: 'FTC/BTC',
quantity: '957.65001732',
price: '0.00001210',
total: '0.01158757',
type: 'Sell'
}
}
... और मैं इसे बचाने के लिए ...
market.trades.push(trade);
market.save(function(err){
if (err) console.log('Error saving trade to market.');
});
... इसे बाहर पट्टी करने लगता है '
{ channel: 'trade.5', _id: 54f9e3056e23df1ee3e60327 }
मैं एक मान्यता कदम है, बड़े पैमाने पर काम समस्या गायब कर रहा हूँ, आदि: व्यापार 'कुंजी, और यह डाटाबेस को सहेजा जाता है सब है?
संपादित करें: यदि मैं TradeSchema सेट सिर्फ एक ऑब्जेक्ट प्रकार है, यह ठीक सहेजता है:
var TradeSchema = new mongoose.Schema({
channel: String,
trade: Object
});
सुनिश्चित नहीं हैं कि मैं क्या खो देगा के बाद से मैं मोंगो/नेवला के लिए नया हूँ, लेकिन ऐसा लगता है वहाँ की तरह शायद एक नकारात्मक पक्ष।
उसने ऐसा किया! धन्यवाद। – crypticsymbols
यदि आप पहले से ही कुछ बदले और नेस्टेड ऑब्जेक्ट के साथ मॉडल रखते हैं, तो आप इसका उपयोग भी कर सकते हैं: 'market.trades.push (व्यापार); market.markModified ('ट्रेडों'); market.save(); 'यह मेरे लिए एक आकर्षण की तरह काम किया है! Ty। – SkyDancer