【发布时间】:2016-08-31 13:44:53
【问题描述】:
我正在使用 node 和 mongoose 来更新 watson 排名和检索数据库。我正在尝试将文档添加到集合中。我可以添加一个文档。但是,我为多个创建的 json 对象失败了。我在这里看到了这个答案,但它是针对 curl 的。我想知道是否有人可以帮助我处理 JS 部分。
// add a document
//var doc = { id : 1234, title_t : 'Hello', text_field_s: 'some text' };
var data = [];
for (var count = 0; count < documents.length ; count++){
data.push({"add":{"doc":{id : documents[count]._id, problem : documents[count].problem, description : documents[count].description, resolution : documents[count].resolution}}})
}
console.log(data);
solrClient.add(data, function(err) {
if(err) {
console.log('Error indexing document: ' + err);
} else {
console.log('Indexed a document.');
solrClient.commit(function(err) {
if(err) {
console.log('Error committing change: ' + err);
} else {
console.log('Successfully commited changes.');
callback(documents);
}
});
}
});
我明白了:
[ { add: { doc: [Object] } },
{ add: { doc: [Object] } },
{ add: { doc: [Object] } },
{ add: { doc: [Object] } },
{ add: { doc: [Object] } },
{ add: { doc: [Object] } } ]
但是,我想我需要这个: [添加:{doc:[对象]}, 添加:{doc:[对象]}, ...
当我尝试删除添加前面的 { 时,我在参数列表之后收到一个错误(缺少)并且它不会运行。
【问题讨论】:
-
好吧,
[ add: { doc: ...不会是有效的任何东西。我不知道 API;它想要{ add: { doc: ...}}的集合还是想要像{ add: [ { doc: ...}, { doc: ...} ]}这样添加的集合?文档怎么说? -
示例有: { "add" : { "doc" : { "id" : 1, "author" : "brenckman,m.", "bibliography" : "j.ae. scs . 25, 1958, 324.”, “body” : “exnt .”, “title” : “滑流中机翼空气动力学的实验研究”。 } }, "add" : { "doc" : { "id" : 2, "author" : "ting-yili", "bibliography" : "纽约州特洛伊伦斯勒理工学院航空工程系", "body" :“简单流动。”,“标题”:“简单不可压缩流体。” } },
标签: javascript json node.js ibm-watson retrieve-and-rank