我在Keystone中有几个Mongoosastic模型,它们更新得很好,使用:
Test.schema.plugin(mongoosastic);但是,当我尝试同步/索引现有集合( https://github.com/mongoosastic/mongoosastic#indexing-mongoose-references )的文档化方法,以便拉入所有以前的条目时:
BookSchema.plugin(mongoosastic);
var Book = mongoose.model('Book', BookSchema)
, stream = TestSchema.synchronize()
, count = 0;
stream.on('data', function(err, doc){
count++;
});
stream.on('close', function(){
console.log('indexed ' + count + ' documents!');
});
stream.on('error', function(err){
console.log(err);
});我得到一个错误:
var TestSchema = mongoose.model('Test', Test)
^
ReferenceError: mongoose is not defined显然,这是行不通的,所以我试着用keystone.list替换mongoose.model……
stream = keystone.list('Test').synchronize();但后来我得到了一大笔钱:
ReferenceError: Unknown keystone list {"paths":{"_id":{"path":"_id","instance":"ObjectID","validators":[],"setters":[null],"getters":[],"options":{"auto":true},"_index":null},"slug":{"enumValues":[],"regExp":null,"path":"slug","instance":"String","validators":[],"setters":[],"getters":[],"options":{"index":{"unique":true}},"_index":{"unique":true}},"createdAt":{"path":"createdAt"结束语:
if (!ret) throw new ReferenceError('Unknown keystone list ' + JSON.stringify(arg));
^
ReferenceError: Unknown keystone list "Test"看起来应该很简单。有人知道我错过了什么吗?请。任何帮助都是非常感谢的!范克斯。
发布于 2016-05-05 19:05:25
如果要从TestSchema同步数据,应使用:
var stream = TestSchema.model.synchronize(),或者如果你想从keystone列表中获取它:
var stream = keystone.list('Test').model.synchronize()
这里最重要的是你只能在模型上调用sychronize方法。
希望这能有所帮助!
https://stackoverflow.com/questions/36555058
复制相似问题