Node.js Kuzzle创建集合映射不工作
使用kuzzle.collection.create('abc123','yellow taxi',{definition}) 在索引上创建集合。已创建集合,但未应用映射 这是我使用的代码Node.js Kuzzle创建集合映射不工作,node.js,elasticsearch,kuzzle,Node.js,elasticsearch,Kuzzle,使用kuzzle.collection.create('abc123','yellow taxi',{definition}) 在索引上创建集合。已创建集合,但未应用映射 这是我使用的代码 const definition = { mappings: { dynamic: "true", properties: { VendorID: { "type": &qu
const definition = {
mappings: {
dynamic: "true",
properties: {
VendorID: {
"type": "integer"
},
tpep_pickup_datetime: {
"type": "date"
},
........
}
},
settings: {
}
};
try {
// Creates a collection
await kuzzle.collection.create('abc123', 'yellow-taxi', {definition});
// await kuzzle.collection.create('abc123', 'yellow-taxi');
console.log('Collection');
} catch (error) {
console.error(error.message);
}
这是我使用的kuzzle文档参考
const definition = {
mappings: {
dynamic: "true",
properties: {
VendorID: {
"type": "integer"
},
tpep_pickup_datetime: {
"type": "date"
},
........
}
},
settings: {
}
};
try {
// Creates a collection
await kuzzle.collection.create('abc123', 'yellow-taxi', {definition});
// await kuzzle.collection.create('abc123', 'yellow-taxi');
console.log('Collection');
} catch (error) {
console.error(error.message);
}
在kuzzle.create之后-我跑
const mapping = await kuzzle.collection.getMapping('abc123', 'yellow-taxi');
console.log('mapping: ', mapping);
mapping: { dynamic: 'false', properties: {} }
传递映射的方式不正确,传递的POJO包含包含映射的
定义
属性。您应该直接传递定义
对象
// don't
console.log({ definition }); // { definition: { mappings: ..., settings: ... } }
// do
console.log(definition); // { mappings: ..., settings: ... }
await kuzzle.collection.create('abc123', 'yellow-taxi', definition);
好的,过了一会儿,我决定用几个字段构建自己的CSV文件,并创建一个新的映射定义。这起作用了。看来我对黄色出租车系列的定义有点不对劲 kuzzle.collection.create('abc123','yellow taxi',定义) 没有给出任何关于映射问题的通知
我的CSV数据映射错误。当我使用wait kuzzle.collection.create('abc123','yellow taxi',definition)时;如果没有花括号,则会保存映射,但不会保存文档。集合为空。