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

मोंगोडब कर्सर से दस्तावेज़ का संग्रह कैसे प्राप्त करें?

एक मोंगोडब Cursor Stream लागू करता है futures से टोकरा . इसका उल्लेख docs में किया गया है :

मैं वास्तव में try_collect() . का उपयोग करने की अनुशंसा करता हूं TryStreamExt से फ़ंक्शन एक Result<Vec<Document>> बजाय। फिर आप unwrap_or_else() . का उपयोग कर सकते हैं सूची वापस करने के लिए। आपको collection_with_type() . का भी इस्तेमाल करना चाहिए संग्रह प्राप्त करने के लिए विधि ताकि आपके परिणाम केवल Document के बजाय उचित प्रकार के लिए स्वचालित रूप से deserialized हो जाएगा (बस सुनिश्चित करें कि यह Debug को लागू करता है , Serialize और Deserialize )।

यह रहा एक कार्यशील नमूना

use futures::TryStreamExt;
use mongodb::Client;
use serde::{Deserialize, Serialize};

#[derive(Debug, Serialize, Deserialize)]
struct Vehicle {
    id: String,
    name: String,
}

async fn list_all() -> Vec<Vehicle> {
    let client = Client::with_uri_str("mongodb://example.com").await.unwrap();
    let database = client.database("test");
    let collection = database.collection_with_type::<Vehicle>("vehicles");
    let cursor = match collection.find(None, None).await {
        Ok(cursor) => cursor,
        Err(_) => return vec![],
    };

    cursor.try_collect().await.unwrap_or_else(|_| vec![])
}



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. mongodb में डुप्लिकेट मानों को संग्रहीत करने के लिए प्रतिबंधित करें

  2. उल्का `Deps.autorun` बनाम `Collection.observe`

  3. मूल कुंजी अज्ञात होने पर मान से MongoDB क्वेरी करें

  4. कई रिकॉर्ड के साथ PyMongo अद्यतन दस्तावेज़

  5. मोंगोडब - शार्किंग करते समय _id विश्व स्तर पर अद्वितीय होना चाहिए