Mongoose 链接查询问题
在进行数据查询表 artPost
的时候,我发现只要我在页面上查询第二次程序就会报错:
Cannot overwrite `artPost` model once compiled. at NativeConnection.Connection.model
下面是我的查询代码:
artPost.prototype.artFind = function artFind(data,count,callback){
var PersonEntity = db.model('artPost');
PersonEntity.find(data).limit(count).exec(callback);
};
求教各位我上面的链接有什么问题吗,页面第一次进入的时候可以正常跑起来查询到数据,但是刷新页面或者重新载入,页面就会报错:
Cannot overwrite `artPost` model once compiled. at NativeConnection.Connection.model ,
3 回复
提示你不能重写artPost模型,也就是说你的代码二次执行时,修改了那个模型,导致报错~
model
定义放到请求外面,不然每次执行会报错。
此问题已经解决,分享下解决方法,产生这个原因是我方法都是通过prototype扩展的,所以到导致了model重复加载,后面我改用了mongoose静态扩展的方法设置的就可以了: PersonSchema.statics.artFind = function(data,count,callback){
return this.find(data).limit(count).exec(callback);
}
希望可以帮到和我遇到同样问题的 同学