这是我的main.js
在哪里,用于索引product
的ElasticSerach。
var Product = require('../models/product');
..
..
var stream = Product.synchronize();
..
//Search logic
..
router.get('/product/:id', function(req, res, next) {
Product.findById({ _id: req.params.id }, function(err, product) {
if (err) return next(err);
res.render('main/product', {
product: product
});
});
});
我收到TypeError: Cannot read property 'stream' of undefined
行的类型错误var stream
。
这是我在../models/product.js
中的Moongoose模式
var mongoose = require('mongoose');
var mongoosastic = require('mongoosastic');
var Schema = mongoose.Schema;
var ProductSchema = new Schema({
category: { type: Schema.Types.ObjectId, ref: 'Category'},
name: String,
price: Number,
image: String
});
ProductSchema.plugin(mongoosastic, {
hosts: [
'localhost:9200'
]
});
module.exports = mongoose.model('Product', ProductSchema);
我在另一个终端中打开了Elasticsearch连接。 我所引用的教程没有问题,但是我的系统也有同样的问题。 我应该怎么做才能解决这个问题?