0
Ich möchte ein JSON-Objekt in ElasticSearch hinzufügen, das ein Array enthält. Ich benutze Python. Mein Code sieht ungefähr so aus:Wie fügt man ElasticSearch ein JSON-Objekt mit einem Array mithilfe von Python hinzu?
#This returns a list of mutual friends
mutual_friends_list = get_mutual_friends(user_id, friend_id)
mutual_friends_dict = {"id": 1, "mutual_friends": mutual_friends_list}
#_DB is the module I have ElasticSearch
_DB.add_mutual_friends(mutual_friends_dict)
In anderen Modul habe ich die folgende Abbildung:
friend_attributes = str({
"mappings": {
"friend_attributes": {
"properties": {
"id_str": {
"type": "string"
},
"mutual_friends": {
"type": "long", "index_name": "tag"
}
}).replace("'",'"')
ich die folgende Fehlermeldung erhalten:
raise HTTP_EXCEPTIONS.get(status_code, TransportError)(status_code,
error_message, additional_info)
elasticsearch.exceptions.RequestError: TransportError(400,
'illegal_argument_exception', '[G3-P0l7][127.0.0.1:9300]
[indices:data/write/index[p]]')
Was sollte ich ändern ein JSON-Objekt mit einem Array hinzufügen?
Ich habe das versucht, aber es hat nicht funktioniert. Vielen Dank. – felipe
@felipe Konnten Sie spezifisch sein? Warum hat es nicht funktioniert? –
@Coldspeed Ich bekomme den folgenden Fehler: raise HTTP_EXCEPTIONS.get (status_code, TransportError) (status_code, error_message, additional_info) elasticsearch.exceptions.RequestError: TransportError (400, 'illegal_argument_exception', '[G3-P0l7] [ 127.0.0.1:9300][indices:data/write/index[p]] ') Mein Programm sendet Daten gut in elastische Suche, wenn ich keine Liste in mutual_friends hinzufüge. Wenn ich eine Liste hinzufüge, zerquetscht. – felipe