KeyError accessing results from Document.view when reduce=False and value is dictionary
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Idoneità per principianti
- 35/100
Direzione di ricerca
Riproduci il problema con la sessione Django shell e la definizione della view documentate. Inizia da couchdbkit/client.py nelle vicinanze di iterator, first e row_wrapper, quindi ispeziona couchdbkit/schema/util.py nelle vicinanze di wrap; il lavoro è completato quando l'accesso al risultato della view con reduce=False e un valore di dizionario non genera più un KeyError.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Additional details at mailing list post:
https://groups.google.com/forum/?fromgroups#!topic/couchdbkit/OldePEe3uxU
Ubuntu 12.04
Couchdbkit 0.6.2
Couchdb 1.2
Django 1.5.dev17942
Python 2.7.3
/home/vincent/temp/greeting/views/all contains a file called map.js with the contents:
function(doc) { emit( 1, {'a': 1, 'b': 2} ); }
There is no reduce.js (so reduce=False is unnecessary)
Reproduce via the following interactive Django Python session:
$ ./manage.py shell
from couchdbkit import *
class Greeting(Document):
def __unicode__(self):
return None
server = Server()
db = server.get_or_create_db("greeting")
Greeting.set_db(db)
greet = Greeting()
greet.test = "test"
greet.save()
from couchdbkit.designer import push
push('/home/vincent/temp/greeting', db)
greets = Greeting.view('greeting/all')
greets.count() # returns 1
greets.first()
Traceback (most recent call last):
File "", line 1, in
File "/usr/local/lib/python2.7/dist-packages/couchdbkit/client.py", line 930, in first
return list(self)[0]
File "/usr/local/lib/python2.7/dist-packages/couchdbkit/client.py", line 920, in iterator
yield wrapper(row)
File "/usr/local/lib/python2.7/dist-packages/couchdbkit/client.py", line 901, in row_wrapper
return schema(data)
File "/usr/local/lib/python2.7/dist-packages/couchdbkit/schema/util.py", line 29, in wrap
cls = classes[doc_type]
KeyError: None
Via the URL http://127.0.0.1:5984/greeting/_design/greeting/_view/all Couchdb gives the output
{"total_rows":1,"offset":0,"rows":[{"id":"49ca1d5086e0c7eb36471d2e621f5a49","key":1,"value":{"a":1,"b":2}}]}
This is the line from the Couchdb log for the Couchdbkit query
[info] [<0.12793.16>] 127.0.0.1 - - GET /greeting/_design/greeting/_view/all?wrap_doc=true 200
- Lingua principale
- Python
- Stelle
- 261
- Fork
- 90
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Preparare l'ambiente
Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di benoitc/couchdbkit
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 82/100
benoitc/couchdbkit#181 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 35/100
benoitc/couchdbkit#196 ·
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 35/100
benoitc/couchdbkit#194 ·
-
Difficoltà 4/5 3-5 giorni Idoneità per principianti 30/100
benoitc/couchdbkit#193 · 2 commenti · 1 reazione ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 48/100
benoitc/couchdbkit#192 ·
Tutte le issue di benoitc/couchdbkit
Issue simili
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 80/100
-
area:other help wanted
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
WingedGuardian/GENesis-AGI#4734 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
peach-mitao/peach#693 ·
I maintainer di solito rispondono entro 1 giorno
-
Failed result serialization destroys a previously saved JSON resultForse già presa @chessing234 l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
huggingface/evaluate#867 ·
-
FTP reads inside a transaction use a nonexistent staging pathForse già presa @Harsh23Kashyap l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 62/100
fsspec/filesystem_spec#2463 ·
I maintainer di solito rispondono entro 1 giorno