2014-09-19 50 views
2

我有一個充滿活力的領域Rails應用程序到我的模型。這些領域可以有一些特殊的字符(例如:'/'),我想要面向這些領域。 我不想更改動態映射的默認值,但我希望它們不被分析。Elasticsearch - 變化的動態領域指數not_analyzed

這裏是我的映射:

GET /items/_mapping 

{ 
. 
. 
    "dynamic_field_1": { 
    "type": "string" 
    }, 
. 
. 
} 

有沒有辦法來更新映射到這一點?

GET /items/_mapping 

{ 
. 
. 
    "dynamic_field_1": { 
    "type": "string", 
    "index": "not_analyzed" 
    }, 
. 
. 
} 

最終回到「分析」 :)

回答

0

您需要在創建索引使用這樣的動態映射:

POST /items/_mapping 
    { 
     "mappings": { 
     "_default_": { 
      "dynamic_templates": [ 
      { 
       "string_template": { 
       "mapping": { 
        "index": "not_analyzed", 
        "type": "string" 
       }, 
       "match_mapping_type": "string", 
       "match": "*" 
       } 
      } 
      ] 
     } 
     } 
    } 

您還可以指定非動態在那裏的領域。

+0

我不想編輯默認;-) – Jakikiller 2014-09-25 08:46:54