Domanda

Ho questo ViewDefinition:

""" Models id."""
models = ViewDefinition('models', 'by_authors', """
function(doc) {
  if (doc.type == "definition") {
    for (var i = 0; i < doc.authors.length; i++) {
      var author = doc.authors[i];
      emit(author, doc._id);
    }
  }
}""")
.

Lo sto chiamando come:

models = []
for principal in principals:
    models += [d.value for d in views.models(self._db)[principal].rows]
return list(set(models))
.

Come posso chiedere invece un elenco di tasti e chiamarlo come:

models = [d.value for d in views.models(self._db)[*principals].rows]
.

È stato utile?

Soluzione

Bene, la soluzione è abbastanza semplice, ho dovuto leggere il codice sorgente per poterlo trovare.

models = [d.value for d in views.models(self._db, keys=principals).rows]
.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top