Tôi đang đùa giỡn với Mongo để tạo một dự án thú cưng giống như SO và tôi muốn triển khai các thẻ bài. Mỗi thẻ có một tên và một con sên (chuỗi được sử dụng làm id trong URL) và một bài đăng có nhiều thẻ. Tôi muốn có thể tạo các truy vấn như "tìm các bài đăng có thẻ A, không có thẻ B" và tôi tự hỏi đây là cách nào để làm điều này.Làm cách nào để triển khai thẻ bài trong Mongo?
Một cách là lưu trữ một mảng các id thẻ với mỗi bài đăng - điều này sẽ làm cho truy vấn dễ dàng hơn, nhưng sẽ yêu cầu thêm một bài cho mỗi bài đăng để lấy tên thẻ và sên. Một cách khác là lưu trữ một mảng [tên thẻ, thẻ slug] với mỗi bài đăng, nhưng tôi không chắc chắn tôi có thể sử dụng thông tin đó trong một số find
.
Có phương pháp nào khác, phương pháp này sẽ hoạt động tốt hơn cho mongo? Tôi mới đến NoSQL, vì vậy tôi đánh giá cao bất kỳ lời khuyên nào về việc làm thế nào điều này có thể được thực hiện. Ngoài ra, tôi đang sử dụng PHP ràng buộc, nhưng điều đó không nên quan trọng.
là cần thiết để thêm sên vào các thẻ? hoặc có được một mảng giá trị không? –
Tôi nghĩ rằng con sên vừa xảy ra là một chi tiết thực hiện của phương pháp OP. Bạn không cần nó. – Russell
Có truy vấn nào trả về tất cả các thẻ (như nếu bạn muốn tạo một đám mây thẻ)? EDIT: Có vẻ như điều này có thể hoạt động: http://stackoverflow.com/a/4977057/389812 – gdw2