2014-09-01 4 views
0

Dans la base de données de démonstration, à la suite docs sont stockés ...View est en cours d'exécution dans CouchDB, mais renvoie un résultat vide

{ 
    "_id":"biking", 
    "_rev":"AE19EBC7654", 
    "title":"Biking", 
    "body":"My biggest hobby is mountainbiking. The other day...", 
    "date":"2009/01/30 18:04:11" 
} 

{ 
"_id":"bought-a-cat", 
"_rev":"4A3BBEE711", 
"title":"Bought a Cat", 
"body":"I went to the the pet store earlier and brought home a little kitty...", 
"date":"2009/02/17 21:13:39" 
} 

{ 
    "_id":"hello-world", 
    "_rev":"43FBA4E7AB", 
    "title":"Hello World", 
    "body":"Well hello and welcome to my new blog...", 
    "date":"2009/01/15 15:52:20" 
    } 

maintenant sur l'exécution de vue suivante qui renvoie la date et le titre du document si elle existe ...

function(doc) { 
    if(doc.date && doc.title) { 
       emit(doc.date, doc.title); 

}}

retourne résultat vide ..

{ 
"total_rows": 0, 
"offset": 0, 
"rows": [] 

}

... ce résultat ne devrait pas ....

+1

Comment interrogez-vous? –

+0

tout me semble bien. J'essaierais d'amender la vue pour retourner seulement si doc.date ou seulement si doc.title et ensuite identifier progressivement la cause. – Hans

+0

afin de Query besoin d'exécuter les vues ... cela peut être fait via Futon ou la ligne de commande aussi curl -X GET http: // localhost: 5984/démo/_design/demo1/_view/view1 .. @ Marcin Skorzewski –

Répondre

0

En supposant que tous vos documents sont enregistrés correctement dans CouchDB, ce qui signifie que vous pouvez interroger chacun des documents via le GET

http://127.0.0.1:5984/myDatabase/biking

alors nous pouvons portée sur la problématique soit à la vue M/R et la requête elle-même.

Vous êtes à peu près dans la bonne direction quand vous avez dit que vous allez changer la vue en une version plus simple.

Vous pouvez vérifier que votre vue fonctionne correctement via la fonction de vue temporaire du futon.

Une fois que vous avez vérifié que la vue fonctionne correctement, je suppose que vous essayez d'appeler la vue via Postman, un problème courant lors de l'appel Postman est de ne pas oublier de mettre les informations de connexion dans le url

http://username:[email protected]:5984/myDatabase/biking

vous pouvez vérifier en appelant les vues intégrées par exemple

http://username:[email protected]:5984/myDatabase/_all_docs

Assurez-vous également reduce n'est pas en cours d'exécution, vous pouvez spécifier explicitement avec reduce=false dans votre requête.

+0

enfin j'ai eu l'erreur ... en stockant les champs dans le document j'ai mis les champs en double guillemets et en interrogeant doc.title ou n'importe quel champ ... il n'a pas pu accéder à ça..Silly me ... merci les gars pour votre aide .... –

+0

@SunitaKumari pourriez-vous me dire comment vous avez résolu le problème? J'ai mon cas une erreur a été levée (ATTENTION: Erreur lors de l'exécution de la vue - null null) et je ne sais pas vraiment ce qui ne va pas. Je vous remercie! – OsomA

Questions connexes