Ma base de données CouchDB comme principal type de document qui ressemble à:Comment puis-je voir les documents utilisateur favoris par utilisateur dans Couchdb map/reduce?
{
"_id" : "doc1",
"type" : "main_doc",
"title" : "the first doc"
...
}
Il y a un autre type de document qui stocke des informations utilisateur. Je souhaite que les utilisateurs puissent étiqueter les documents en tant que favoris. Différents utilisateurs peuvent enregistrer des documents identiques ou différents en tant que favoris. Mon idée était de présenter un document favori pour suivre ce quelque chose comme:
{
"_id" : "fav1",
"type" : "favorite",
"user_id" : "user1",
"doc_id" : "doc1"
}
Il est assez facile de créer une vue avec user_id comme la clé pour obtenir une liste de leurs identifiants de documents préférés. Par exemple:
function(doc) {
if (doc.type == "favorite") {
emit(doc.user_id, doc.doc_id);
}
}
Cependant, je veux la liste des favoris pour afficher la user_id, doc_id et le titre du document. quelque chose comme sortie Donc:
{ "key" : "user1", "value" : ["doc1", "the first doc"] }
Ou est-ce que ce ne serait vraiment pas trop cher d'aller chercher les titres de document dans des requêtes séparées? J'ai déjà une autre vue qui produit l'ID du document et le titre. J'essayais d'éviter d'exiger un autre appel à la DB pour obtenir le titre du document pour chaque favori. –