2015-06-11 8 views
9

ऐसा लगता है कि वर्तमान रूबी मोंगो ड्राइवर 2.0.4 में find_one विधि नहीं है। मैं इसे केवल ग्रिडएफएस के संदर्भ में पा सकता हूं।find_one MongoDB रूबी ड्राइवर

मैं आधिकारिक रूबी ड्राइवर का उपयोग करके मोंगो से एक ही दस्तावेज़ कैसे प्राप्त कर सकता हूं? खोज विधि एक संग्रह को एक वस्तु नहीं देता है।

उत्तर

12

find()CollectionView देता है जो एक अभी तक निष्पादित क्वेरी नहीं है जो एक गणना करने योग्य व्यवहार की तरह व्यवहार करता है। बस पहले रिकॉर्ड ढूंढने के लिए:

find.limit(1).first 

(हाँ, यह कष्टप्रद है)

+0

हाँ, यह निश्चित रूप से परेशान है। जवाब के लिए धन्यवाद! –

+0

मुझे लगता है कि और भी परेशान करने वाला यह है कि मुझे कहीं भी "2.0 तक अपग्रेड" मार्गदर्शिका नहीं मिल सकती है। केवल एक चीज जो मुझे मिल सकती है वह रिलीज नोट्स है: https://github.com/mongodb/mongo-ruby-driver/releases/tag/2.0.0 ... कह रहा है: > 2.0.0 रिलीज़ ड्राइवर का एक पुनर्लेखन है और बिल्कुल पीछे की संगतता प्रदान करता है –

3

आप .find(condition).first

उपयोग कर सकते हैं आप आईडी के आधार पर खोज कर रहे हैं, तो आप भी ऐसा कर सकते हैं

@coll = Coll.find(hash["_id"]) 
संबंधित मुद्दे