Có một số loại tương đương find_by_sql cho mongoid, nơi bạn vượt qua một truy vấn mongo và nó thực hiện Mongoid :: Tài liệu từ kết quả?find_by_sql tương đương với mongoid?
5
A
Trả lời
8
Mongoid kết thúc đối tượng Bộ sưu tập để trả về đối tượng của lớp thích hợp.
Vì vậy, nếu người dùng là một mô hình Mongoid:
cursor = User.collection.find({}, {}) # Just like the Ruby driver...
records = cursor.to_a # An array of User objects
Chỉnh sửa để thêm: Nó thực sự kết thúc tốt đẹp lớp Cursor Mongo của quá. See here:
def each
@cursor.each do |document|
yield Mongoid::Factory.build(@klass, document)
end
end
2
Nếu bạn đang sử dụng Mongoid 3, nó cung cấp dễ dàng truy cập vào các tài xế MongoDB của nó: Moped. Dưới đây là ví dụ về truy cập một số dữ liệu thô mà không sử dụng Mô hình để truy cập dữ liệu:
db = Mongoid::Sessions.default
collection = db[:collection_name]
# finding a document
doc = collection.find(name: 'my new document').first
collection.find.each do |document|
puts document.inspect
end
điều đó thật tuyệt vời! bạn có biết làm thế nào mà người lái xe mongo biết được hiện thực hóa lớp học của tôi? –