0
我使用Mongoid來訪問MongoDB數據庫,但是我遇到了一個奇怪的問題。好像我只能查詢使用find_by
記載,find
總是返回零:Mongoid「find」返回nil,當「find_by」檢索到記錄時
invoices = Invoice.find({})
p "invoices"
p invoices
puts ''
invoice = Invoice.find_by({ _id: <ObjectId> })
p "invoice"
p invoice
puts ''
使用find_by
第二個查詢將返回一個記錄。根據the documentation,find
應返回滿足查詢的每條記錄。
有沒有人有一個想法可能導致這種情況?
我不一定想找到每條記錄,我想找到滿足MongoDB查詢的每條記錄。 'find'不支持_id之外的查詢嗎? –
事實上,在重新閱讀文檔後,我誤解了它是如何工作的(IE更像'findById')。謝謝! –
如果您的查詢很簡單,您可以將其分解爲要傳遞給的屬性。對於更復雜的查詢,您需要閱讀DSL,並可能切換到在您的收藏集**處調用**。 [查詢](http://mongoid.github.io/en/mongoid/docs/querying.html#queries) – p80n