2015-06-02 22 views
23

Güncellemenin nasıl kullanılacağına dair bir örneği var mı? Belge, here belgelenmiştir, ancak belgeler açık değildir ve çalışma örneğini içermemektedir. Kısmi bir doktor kullanarak güncellemek istiyorumBir dokümanı elasticsearch-py kullanarak nasıl güncelleyebilirim?

coll = Elasticsearch() 
coll.update(index='stories-test',doc_type='news',id=hit.meta.id, 
       body={"stanford": 1, "parsed_sents": parsed }) 

ve ben

elasticsearch.exceptions.RequestError: 
TransportError(400, u'ActionRequestValidationException[Validation Failed: 1: script or doc is missing;]') 

olsun, ancak herhangi bir argüman almaz güncelleme yöntemi 'doc' veya 'adlı: Aşağıdaki denedim belge'.

cevap

41

Neredeyse oradasınız, vücudunuzu bir "doc" alanı içine almanız gerekiyor. elasticsearch-py kısmi güncelleştirme yapmanın doğru yolu şöyledir:

coll = Elasticsearch() 
coll.update(index='stories-test',doc_type='news',id=hit.meta.id, 
       body={"doc": {"stanford": 1, "parsed_sents": parsed }}) 
+0

ve hangi update_by_query API ile kullanımı bu eğer :) Orada .. sanırım hiçbir id parametresi Ya gerekir? –

+2

Hayır, bu farklı. sorgu-güncelleştirme, elasticsearch-py kütüphanesi tarafından desteklenen bir şey değil, harici bir eklentidir. – Val

+0

Python'da http isteği ile update_by_query kullanmak mümkün mü? –

İlgili konular