2011-10-20 6 views
0

Quel est l'ordre des opérations pour le pilote mongodb-native? Imaginons que vous ayez une classe dont le but est de sauvegarder un document quelconque et disons qu'il a une longue durée de vie. Combien de fois faut-il appeler ouvert? Une fois par db écrire? Quand est-ce qu'on est censé s'appeler? Essentiellement, je veux une méthode de classe qui ressemble à ceci:Node.JS MongoDB Ordre des opérations Cas d'utilisation

var myMongoClass = new MongoDB(server,port) 
    myMongoClass.write_file(filename,callback) 
    myMongoClass.write_doc(doc,callback) 

Je posté il y a un moment et obtenu ce travail: Problem with MongoDB GridFS Saving Files with Node.JS

Il est maintenant ne fonctionne pas du tout et de ne pas avec TypeError: Cannot read property 'md5' of null

Chaque Quand je travaille avec cette bibliothèque, je veux me cogner la tête à travers un mur.

+0

Je ressens votre douleur. J'ai eu beaucoup de problèmes avec mongoDB et mongoose (que vous pourriez essayer d'ailleurs). C'est la nature des projets immatures, les changements d'API sous vos pieds, la documentation est clairsemée, souvent contradictoire, et généralement inutile. Et c'est frustrant quand on le compare aux anciennes technologies SQL qui existent depuis plus longtemps que la plupart des programmeurs. Un peu d'une diatribe, mais je sympathise. – davin

Répondre

0

Il semble que la bonne réponse est de créer un client et de garder ce client ouvert pendant toute la durée de l'application (sans jamais l'appeler explicitement). J'ai un wrapper qui garde une référence au client connecté et mon application ne démarre que si la connexion est reçue.