Browse Source

[DOCS] Reformat put mapping API docs (#45709)

James Rodewig 6 năm trước cách đây
mục cha
commit
6b5e3e9e06
2 tập tin đã thay đổi với 105 bổ sung23 xóa
  1. 104 23
      docs/reference/indices/put-mapping.asciidoc
  2. 1 0
      docs/reference/mapping.asciidoc

+ 104 - 23
docs/reference/indices/put-mapping.asciidoc

@@ -1,14 +1,15 @@
 [[indices-put-mapping]]
-=== Put Mapping
+=== Put mapping API
+++++
+<titleabbrev>Put mapping</titleabbrev>
+++++
 
-The PUT mapping API allows you to add fields to an existing index or to change search only settings of existing fields.
+Adds new fields to an existing index or changes the search settings of existing
+fields.
 
 [source,js]
---------------------------------------------------
-PUT twitter <1>
-{}
-
-PUT twitter/_mapping <2>
+----
+PUT /twitter/_mapping
 {
   "properties": {
     "email": {
@@ -16,19 +17,99 @@ PUT twitter/_mapping <2>
     }
   }
 }
---------------------------------------------------
+----
+// CONSOLE
+// TEST[setup:twitter]
+
+NOTE: Before 7.0.0, the 'mappings' definition used to include a type name.
+Although specifying types in requests is now deprecated, a type can still be
+provided if the request parameter `include_type_name` is set. For more details,
+please see <<removal-of-types>>.
+
+
+[[put-mapping-api-request]]
+==== {api-request-title}
+
+`PUT /{index}/_mapping`
+
+`PUT /_mapping`
+
+
+[[put-mapping-api-path-params]]
+==== {api-path-parms-title}
+
+include::{docdir}/rest-api/common-parms.asciidoc[tag=index]
++
+To update the mapping of all indices, omit this parameter or use a value of
+`_all`.
+
+
+[[put-mapping-api-query-params]]
+==== {api-query-parms-title}
+
+include::{docdir}/rest-api/common-parms.asciidoc[tag=allow-no-indices]
+
+include::{docdir}/rest-api/common-parms.asciidoc[tag=expand-wildcards]
++
+Defaults to `open`.
+
+include::{docdir}/rest-api/common-parms.asciidoc[tag=include-type-name]
+
+include::{docdir}/rest-api/common-parms.asciidoc[tag=index-ignore-unavailable]
+
+include::{docdir}/rest-api/common-parms.asciidoc[tag=timeoutparms]
+
+
+[[put-mapping-api-request-body]]
+==== {api-request-body-title}
+
+`properties`::
++
+--
+(Required, <<mapping,mapping object>>) Mapping for a field. For new
+fields, this mapping can include:
+
+* Field name
+* <<field-datatypes,Field datatype>>
+* <<mapping-params,Mapping parameters>>
+
+For existing fields, see <<updating-field-mappings>>.
+--
+
+
+[[put-mapping-api-example]]
+==== {api-examples-title}
+
+[[put-field-mapping-api-basic-ex]]
+===== Example with index setup
+
+The put mapping API requires an existing index. The following
+<<indices-create-index, create index>> API request creates the `publications`
+index with no mapping.
+
+[source,js]
+----
+PUT /publications
+----
 // CONSOLE
-<1> <<indices-create-index,Creates an index>> called `twitter` without any mapping.
-<2> Uses the PUT mapping API to add a new field called `email`.
 
-More information on how to define mappings can be found in the <<mapping,mapping>> section.
+The following put mapping API request adds `title`, a new <<text,`text`>> field,
+to the `publications` index.
 
-NOTE: Before 7.0.0, the 'mappings' definition used to include a type name. Although specifying
-types in requests is now deprecated, a type can still be provided if the request parameter
-include_type_name is set. For more details, please see <<removal-of-types>>.
+[source,js]
+----
+PUT /publications/_mapping
+{
+  "properties": {
+    "title":  { "type": "text"}
+  }
+}
+----
+// CONSOLE
+// TEST[continued]
 
-[float]
-==== Multi-index
+[[put-mapping-api-multi-ex]]
+===== Multiple indices
 
 The PUT mapping API can be applied to multiple indices with a single request.
 For example, we can update the `twitter-1` and `twitter-2` mappings at the same time:
@@ -36,8 +117,8 @@ For example, we can update the `twitter-1` and `twitter-2` mappings at the same
 [source,js]
 --------------------------------------------------
 # Create the two indices
-PUT twitter-1
-PUT twitter-2
+PUT /twitter-1
+PUT /twitter-2
 
 # Update both mappings
 PUT /twitter-1,twitter-2/_mapping <1>
@@ -50,12 +131,12 @@ PUT /twitter-1,twitter-2/_mapping <1>
 }
 --------------------------------------------------
 // CONSOLE
-<1> Note that the indices specified (`twitter-1,twitter-2`) follows <<multi-index,multiple index names>> and wildcard format.
+// TEST[setup:twitter]
 
+<1> Note that the indices specified (`twitter-1,twitter-2`) follows <<multi-index,multiple index names>> and wildcard format.
 
 [[updating-field-mappings]]
-[float]
-==== Updating field mappings
+===== Update an existing field
 
 // tag::put-field-mapping-exceptions[]
 
@@ -79,7 +160,7 @@ For example:
 
 [source,js]
 -----------------------------------
-PUT my_index <1>
+PUT /my_index <1>
 {
   "mappings": {
     "properties": {
@@ -97,7 +178,7 @@ PUT my_index <1>
   }
 }
 
-PUT my_index/_mapping
+PUT /my_index/_mapping
 {
   "properties": {
     "name": {

+ 1 - 0
docs/reference/mapping.asciidoc

@@ -38,6 +38,7 @@ document.
 
 
 [float]
+[[field-datatypes]]
 == Field datatypes
 
 Each field has a data `type` which can be: