2010-10-17 5 views

Trả lời

43

Bạn có thể truy vấn tài liệu được nhúng, chỉ cần đủ điều kiện tên. Bây giờ, điều này sẽ trả về tất cả Tác giả có sách phù hợp với truy vấn của bạn.

Nếu Tác giả được định nghĩa là có nhiều: Sách (và cuốn sách là một nhúng :: tài liệu)

@authors_with_sewid = Author.where("books.name" => "sewid").all 

Sau đó bạn sẽ cần phải lặp qua các tác giả và trích xuất những cuốn sách.

+0

Ok, cảm ơn rất nhiều. Nếu tôi có một hỗn hợp các tài liệu được nhúng và tham chiếu, tôi có thể truy vấn các tài liệu được tham chiếu không? Ví dụ: Mô hình tác giả có trường người tạo, chứa ID của người dùng. Có thể thực hiện 'Author.where ("book.name" = "sewid") và ("creator.username" => "example")' không? Lần thử đầu tiên không thành công. – sewid

+0

Một khi chúng là đối tượng được tham chiếu, bạn sẽ cần một Tham gia. Và không có sự tham gia nào trong đất Mongodb. –

+2

Điều tốt nhất để làm trong trường hợp đó là chuẩn hóa dữ liệu của bạn và lưu trữ tên người dùng của người sáng tạo với Tác giả. – Nader