2017-02-22 4 views
0

私が持っている私は、私は以下のが、それが表示されているエラーで試してみましたES 2.4.0文書の特定のフィールドを更新しますか?

Nameグループにlastフィールドを更新する必要があり、この

   "College": "UCLA", 
       "University": "American", 
       "Branch": "MECH", 
       "Name": { 
        "first": "john", 
        "middle": "william", 
        "last": "Richards" 
       } 

のような文書

POST alma/matter/1/_update 
{ 
    "doc": { "Name.last": "junior" } 
} 

エラー:

{ 
    "error": { 
     "root_cause": [ 
     { 
      "type": "mapper_parsing_exception", 
      "reason": "Field name [Name.last] cannot contain '.'" 
     } 
     ], 
     "type": "mapper_parsing_exception", 
     "reason": "Field name [Name.last] cannot contain '.'" 
    }, 
    "status": 400 
} 

答えて

0

あなたはドットが入ったフィールドを参照することはできません。代わりに次のようにすることができます:

POST alma/matter/1/_update 
{ 
    "doc": { "Name": {"last": "junior" }} 
} 
+0

ありがとうございます。あなたの答えに 'last'フィールドを閉じてください。 – Seeker

+0

ESで特定のフィールドを作成する場合は、更新APIを使用するか、マッピングを再インデックスする必要があります。 – Seeker

+0

同じ呼び出しを使用して新しいフィールドを作成することは可能です。 – Val

関連する問題