मैं मैन्युअल रूप से मेन्गोडब के नोडोड्स चालक में बीएसएनओ प्रकार निर्दिष्ट कर सकता हूं? अगर मुझे "$ संख्या" का उपयोग करने में त्रुटि हो रही है

Aug 18 2020

यह है कि मैं संग्रह में डालने से पहले दस्तावेज़ के ऑब्जेक्ट को कैसे तैयार कर रहा हूं

function newTupple(name, email){
return {
  email:email,
  name:name,
  account_status:{
    email_verified:{                  //I want this in Int64
        "$numberLong": `${Date.now()}`
    },
    activated:false
  }
}
}

फिर मैंने इसे डाला

const new_doc = newTupple("Ninja", "[email protected]")
collection.insertOne(new_doc, (err, result)=>{
if(err){
    //err: returns " key $numberLong must not start with '$' "
}
}

मैं npm पैकेज का उपयोग कर रहा हूं [email protected]

मैं क्या गलत कर रहा हूं? या जेएस के लिए कस्टम डेटा प्रकार उपलब्ध नहीं है?

......................................

अपडेट करें

......................................

पूर्ण त्रुटि लॉग

Error: key $numberLong must not start with '$'
    at serializeInto (--------------\node_modules\bson\lib\bson\parser\serializer.js:915:19)
    at serializeObject (--------------\node_modules\bson\lib\bson\parser\serializer.js:347:18)
    at serializeInto (--------------\node_modules\bson\lib\bson\parser\serializer.js:941:17)
    at serializeObject (--------------\node_modules\bson\lib\bson\parser\serializer.js:347:18)
    at serializeInto (--------------\node_modules\bson\lib\bson\parser\serializer.js:941:17)
    at serializeObject (--------------\node_modules\bson\lib\bson\parser\serializer.js:347:18)
    at serializeInto (--------------\node_modules\bson\lib\bson\parser\serializer.js:727:17)
    at serializeObject (--------------\node_modules\bson\lib\bson\parser\serializer.js:347:18)
    at serializeInto (--------------\node_modules\bson\lib\bson\parser\serializer.js:941:17)
    at BSON.serialize (--------------\node_modules\bson\lib\bson\bson.js:64:28)

जवाब

1 D.SM Aug 18 2020 at 17:24

आप विस्तारित जसन सिंटैक्स का उपयोग कर रहे हैं जो किसी अनुप्रयोग में ऑब्जेक्ट ग्राफ़ के निर्माण के लिए अनुचित है। इसके बजाय आपको उचित प्रकार की वस्तुओं का निर्माण करना चाहिए।

उदाहरण के लिए एक लंबे उदाहरण के लिए यहां देखें ।

const BSON = require('bson');
const Long = BSON.Long;

const doc = { long: Long.fromNumber(100) };