Bạn phải lưu ý rằng không có liên kết nào trong mongodb. Trong dbs quan hệ, includes
tạo thành một truy vấn nối và bạn có thể sử dụng các cột từ cả hai bảng trong truy vấn. Tuy nhiên, do không có tham gia trong mongodb nên không thể thực hiện tương tự.
Trong mongoid, includes
chỉ cần lưu một loạt các cuộc gọi db. Nó tìm nạp và lưu trữ các bản ghi được liên kết trong bản đồ nhận dạng để truy xuất nhanh, nhưng trong khi truy vấn, một truy vấn chỉ có thể xử lý một tập hợp.
Nếu bạn cần các bài viết dựa trên tên người dùng, tôi sẽ đề xuất các công việc sau:
user_ids = User.where(username: 'erebus').only(:_id).map(&:_id)
articles = Article.where(:user_id.in => user_ids)