Skip to content

Commit d954de3

Browse files
committed
Do not merge fields into _source
Fixes #1015
1 parent 6063c60 commit d954de3

File tree

2 files changed

+3
-8
lines changed

2 files changed

+3
-8
lines changed

elasticsearch_dsl/utils.py

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -409,13 +409,6 @@ def __get_field(cls, name):
409409
def from_es(cls, hit):
410410
meta = hit.copy()
411411
data = meta.pop('_source', {})
412-
if 'fields' in meta:
413-
for k, v in iteritems(meta.pop('fields')):
414-
if k.startswith('_') and k[1:] in META_FIELDS:
415-
meta[k] = v
416-
else:
417-
data[k] = v
418-
419412
doc = cls(meta=meta)
420413
doc._from_dict(data)
421414
return doc

test_elasticsearch_dsl/test_document.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -572,4 +572,6 @@ class Index:
572572

573573
c = Company.from_es(doc)
574574

575-
assert c.to_dict() == {'city': 'Amsterdam', 'hello': 'world', 'name': 'Elasticsearch', "_tags": ["search"], "_tagline": "You know, for search"}
575+
assert c.meta.fields._tags == ['search']
576+
assert c.meta.fields._routing == 'es'
577+
assert c._tagline == 'You know, for search'

0 commit comments

Comments
 (0)