Est-il possible de lier plusieurs documents dans une vue.CouchDB lier plusieurs documents
Par exemple:
{
"_id" : "0b86008d8490abf0b7e4f15f0c6a463b",
"name" : "copenhagen"}
{
"_id" : "8986008d8490abf0b7e4f15f0c6a333b",
"player" : "Mark"
}
{
"_id" : "4b86008d8490abf0b7e4f15f0c6a463c",
"location" : { "uuid" : "0b86008d8490abf0b7e4f15f0c6a463b"},
"player" : { "uuid" : "8986008d8490abf0b7e4f15f0c6a333b"},
"session" : "9876"
}
Je veux une vue d'inclure le document de l'emplacement ainsi que le document de joueur.
Vue:
"fetchByLocationAndPlayer": {
"map": "function(doc) { if (doc.session) { emit(doc.session, { _id : **doc.location.uuid** }); } }"
}
Dans la requête que j'utilise includedocs = true.
Comment puis-je émettre plusieurs documents correspondant à plusieurs clés dans un même document?
Merci! Ça marche. Y at-il un moyen de limiter le json émis par le document lié? Il émet l'intégralité du document lié en tant qu'attribut doc. – Bhoomi
@Boomi malheureusement pas. Vous ne pouvez pas sélectionner les champs qui seront émis par le document lié. En y pensant, ce serait une bonne chose à avoir. –
Vous pouvez utiliser une fonction de liste pour lisser la sortie totale de la vue: http://docs.couchdb.org/en/latest/couchapp/ddocs.html?highlight=list%20function#list-functions –